本來多執行緒就不熟悉,每次做到這裡 總會遇到這個問題,解決一次 忘一次, 這記下來
private static int thread_num = 10; 執行緒總數
private atomicinteger threadnum = new atomicinteger(0); 每個執行緒執行完 了 記錄乙個標記
es.shutdown(); 這個只能讓執行緒池退出,並不能讓 主線程推出,所以這裡要給乙個 next 標記,當執行緒池 關閉之後,告訴主線程, 這是主線程 繼續向下執行;
executorservice es = executors.newfixedthreadpool(thread_num);
for (int i = 0; i < thread_num; i++)
boolean next = true;// 主線程退出標記
while (next)
} else
}class initlangfangdata extends thread
private string loopstr;
public initlangfangdata(string loopstr)
this.loopstr = loopstr;
public void run()
try catch (datacellexception e) catch (ioexception e) {
logger.error(e.getmessage(), e);
threadnum.getandincrement();
java多執行緒執行順序
我們建立兩個執行緒,讓奇數執行緒輸出奇數,偶數執行緒執行輸出偶數。先來看看 實現 package test import org.ietf.jgss.oid public class threadnum extends thread public void run system.out.printl...
java多執行緒執行問題
class demo extends thread public void run catch interruptedexception e public class test d2.start 如果開啟新執行緒之前,就因為異常而中止了執行緒,那麼新執行緒將無法開啟!class demo exten...
多執行緒 等待所有任務執行完成
在多執行緒中,有時候需要等待所有執行緒執行完成後才讓繼續往下執行,如查詢結果彙總等。下面列舉兩種等待方式 方式一 利用 countdownlatch 類完成。示例 按任務總量建立計數器 final countdownlatch countdownlatch new countdownlatch so...