一、概述
二、**
1、不使用join
package com.cfl.thread;
import sun.util.logging.resources.logging;
/** * join 讓父執行緒等待子執行緒結束之後才能繼續執行
* 健康資訊檢查:已收集5台集伺服器資訊,並記錄第一台開始收集時間和最後一台結束收集時間
* @author chenfenli
* */
public class thread5
public static class healthcollect implements runnable
public void run() catch (interruptedexception e)
} }
}
starttime: 1562513784764 endtime: 1562513784768 時間差: 4
main
m2 successfully
m3 successfully
m1 successfully
2、開啟注釋,使用join
thread1.join();
thread1.join();
thread1.join();
m2 successfully
m3 successfully
m1 successfully
starttime: 1562513984607 endtime: 1562513994611 時間差: 10004
main
java高併發程式設計wait和 notify
wait和 notify必須配合synchronized使用 乙個執行緒修改乙個物件的值,而另乙個執行緒則感知到了變化,然後進行相應的操作,這就是wait notify 和notifyall 方法的本質。具體體現到方法上則是這樣的 乙個執行緒a呼叫了物件obj的wait方法進入到等待狀態,而另乙個執...
C 程式設計高併發的幾種處理方法
併發 英文concurrency 其實是乙個很泛的概念,字面意思就是 同時做多件事 不過方式有所不同。在.net的世界裡面,處理高併發大致有以下幾種方法 1,非同步程式設計 非同步程式設計就是使用future模式 又稱promise 或者 機制來實現 non blocking on waiting ...
C 程式設計高併發的幾種處理方法詳解
併發 英文concurrency 其實是乙個很泛的概念,字面意思就是 同時做多件事 不過方式有所不同。在.net的世界裡面,處理高併發大致有以下幾種方法 1 非同步程式設計 非同步程式設計就是使用future模式 又稱promise 或者 機制來實現 non blocking on waiting ...