Java 多執行緒均勻處理同乙個List中的資料

2021-08-28 14:44:34 字數 653 閱讀 1070

需求:使用多執行緒來處理同乙個list中的資料,希望每個執行緒處理的數量是均勻的

事例**如下:

public class test 

public void run()

}public static void main(string args)

int length = tmplist.size();

int num = 10; //初始執行緒數

//啟動多執行緒

if(num > length)

int basenum = length / num;

int remaindernum = length % num;

int end = 0;

for (int i = 0; i < num; i++) else if( i < remaindernum)

handlethread thread = new handlethread("執行緒[" + (i + 1) + "] ", tmplist,start , end);

thread.start();}}

}

控制台輸出如下:

多執行緒併發同乙個表問題

table for update for update of a.id a1.有where條件時,鎖定條件中指定的資料行 行級封鎖 2.無where條件是,鎖定表a 表級封鎖 1.有where條件時,鎖定條件中指定的資料行 行級封鎖 2.無where條件是,鎖定表a 表級封鎖 a,b直接封鎖a,b表...

C 多執行緒如何訪問同乙個資料

在多執行緒中,為了使資料保持一致性必須要對資料或是訪問資料的函式加鎖,在資料庫中這是很常見的,但是在程式中大部分都是單執行緒的程式,所以沒有加鎖的必要,但是在多執行緒中,為了保持資料的同步,一定要加鎖。在framework中已經為我們提供了三個加鎖的機制,分別是monitor類 lock關鍵字和mu...

解決多執行緒讀寫同乙個檔案的異常

多執行緒公用乙個物件時,也會出現和公用 類似的問題,這種問題就不應該使用lock關鍵字了,這裡需要用到system.threading中 的乙個類monitor,我們可以稱之為監視器,monitor提供了使執行緒共享資源的方案。monitor類可以鎖定乙個物件,乙個執行緒只有得到這把鎖才可以對該物件...