提高讀取文件的效率小試

首先,不要讀一下,操作一下,再寫一下.這樣不好.

其次,如果不用多線程來做,需要記錄每次讀到哪裏了,考慮到異常,重啓等情況,非常繁瑣,容易出錯

最後,希望大家用2個線程

1個是讀

1個是操作

讀了之後可以放在阻塞隊列裏面,這樣可以保證先進先出,不會串行

然後,操作的線程就去取隊列中的數據來操作.

需要用到的知識有

1,arrayblockingqueue,注意offer put 這樣可以阻塞的操作

2, randomaccessfile(file,"rw");  因爲多個線程操作文件,注意要把文件鎖住

3, getChannel().tryLock(); 這時候利用異常,如果得不到鎖,就等一下,繼續要鎖.


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章