看板 C_Sharp 關於我們 聯絡資訊
最近在想一個關於緩衝問題... 事情是這樣的 我的程式的某一段必須處理不斷讀入的資料 假設某個文字檔好了 內容如下 ------------testfile.txt------------------------ 11111111111111111111111111 222222222222222222222222222 333333333333333333333 444444444444444444444444444444444444444 55555555555555555555555555555 ..... 13213254325345632453452345345324555554443333 ------------------EOF---------------------------- 大約有幾萬行... 因為讀入每一行之後都要運算處理 然後在視窗中更新 而這樣的過程中造成了一些問題... 所以想換個方式 每次讀入數十行 然後在視窗中更新 這樣一來應該可以大幅降低CPU處理使用者界面的負擔 但問題又來了....要用什麼方式實作? C#裡有內建類似的機制嗎 (爬文爬到stream 不曉得是不是?) 還是有類似的範例可以參考呢? 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 112.105.196.238
james732:「BufferedStream」可以google看看這是不是你要的 12/15 23:48
BETNPP:如果資料量不大(小於記憶體) 一次把讀完 再用迴圈處理 12/16 03:04
BETNPP:可以大量減少檔案IO時間 畢竟IO花的時間是CPU的好幾倍 12/16 03:06
wvsrugby:開一個執行緒接收並處理資料,以非同步方式更新畫面. 12/17 00:15
tvbic:開thread 01/04 02:31