如果您打開一個文件進行讀取,讀取,關閉它,然後重複該過程(在循環中),python會不斷訪問硬盤驅動器?因爲它似乎不是來自我的實驗,我想了解爲什麼。Python - 打開文件時的HardDrive訪問
一種(非常)簡單的例子:
while True:
file = open('/var/log/messages', 'r')
stuff = file.read()
file.close()
time.sleep(2)
如果我跑這一點,我的硬盤驅動器訪問LED亮起一次,然後將硬盤驅動器保持靜止狀態。這怎麼可能? python以某種方式保持存儲在RAM中的文件的內容?因爲邏輯會告訴我它應該每兩秒訪問一次硬盤。
是的,OS中的文件緩存優化了這個操作。而所有現代操作系統都有這個功能。在linux上檢查「頂部」以確定緩衝區緩存的大小。 http://tldp.org/LDP/tlk/fs/filesystem.html – powerrox
其實如果操作系統不這樣做,那真的是跛腳 –