国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

java多線程寫入同一文件 java多線程讀取txt文件?

java多線程讀取txt文件?調(diào)用上面的函數(shù),而不是直接在原程序中讀取,函數(shù)將統(tǒng)一讀取行。這樣,無論您有n個線程還是一個線程,都不會重復(fù)讀取行或不完整的讀取行。為了充分利用多線程,必須將文件劃分為多個

java多線程讀取txt文件?

調(diào)用上面的函數(shù),而不是直接在原程序中讀取,函數(shù)將統(tǒng)一讀取行。這樣,無論您有n個線程還是一個線程,都不會重復(fù)讀取行或不完整的讀取行。

為了充分利用多線程,必須將文件劃分為多個區(qū)域,以便每個線程讀取。然后我們需要一個算法來計算每個線程的開始和結(jié)束位置。首先,根據(jù)配置的線程數(shù)和文件的總長度,計算每個線程的平均分配讀取長度。

但是,由于該文件是純文本文件,因此必須按行處理。如果分割點在一條直線的中間,那么直線數(shù)據(jù)將被分成兩部分,并由兩個線程同時處理。這種情況不可能發(fā)生。所以每個區(qū)域末尾的字符必須是換行符。第一個區(qū)域的開始位置為0,結(jié)束位置設(shè)置為(文件長度/線程數(shù))。如果結(jié)束位置不是換行符,則只能增加1,直到它成為換行符。