3
我試圖找到一個更優雅和scalaish的方式來逐行讀取文件,並在達到文件結尾時調用函數 。這是我目前的執行:Scalish的方式來讀取文件,並在文件結束時做些什麼
val source = scala.io.Source.fromFile("data.txt")
for(line <- source.getLines())
{
// do something with data
println(line)
}
// end of file reached do something else
doSomethingWithAllDataLoaded()
在這裏,我需要的更少迭代的東西,運行此文件同時讀,最後調用回調函數到達文件的每一端。
實際上,我想要做的是並行讀取多個文件,並避免將它們加載到內存中,因爲它們很大。 – jrabary
請閱讀我的編輯 – serejja
並行磁盤IO?通常是一個壞主意。磁盤訪問是連續的,同時讀取多個文件將意味着來回移動磁頭,從而減慢一切...更好地順序讀取塊數據並行化塊處理。當然,你也可以考慮一個(昂貴的)花式並行IO文件系統...... – paradigmatic