簡體   English   中英

澄清多線程/異步/並行編程

[英]Clarification on multithreaded/asynchronous/parallel programming

我在網上閱讀了許多有關多線程/異步/並行編程的文章,並且經常遇到如下類似的聲明。

寫入文件時,即使同時有等待處理的請求也不會使用CPU。 這些系統的一般指示是即使在壓力條件下,響應時間長且CPU使用率低。

如何在寫入文件時不使用CPU?

希望我的問題很明確。

CPU正在等待硬件指示它已完成處理所請求的操作,您的處理器不會將文件寫入硬盤,這是由IDE / SATA / RAID控制器處理的。

基本上,當您“寫入”文件時,您會將信息發送到硬盤驅動器(此位使用CPU),但是隨后您需要等待信息已物理寫入磁盤。 此等待時間不使用CPU,但顯着長於前一個。 加載時相同,您花費99%的時間等待硬盤驅動器以物理方式獲取信息。

因為CPU正在等待磁盤的響應。 磁盤是一個獨立的單元,它通過串行總線(或舊磁盤的並行總線)與CPU通信。 內部驅動器和外部驅動器之間的技術差異實際上主要在於它是在計算機盒的內部還是外部。

將一個數據包發送到要寫入的磁盤,然后CPU只能等到磁盤完成它的工作,並返回所請求操作的狀態。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM