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

java中如何結(jié)束一個(gè)程序 如何確保main()方法所在的線程是Java程序最后結(jié)束的線程?

如何確保main()方法所在的線程是Java程序最后結(jié)束的線程?要達(dá)到這種情況,我們必須知道以下幾點(diǎn)1。Java中的線程結(jié)束在run方法完成后自動(dòng)結(jié)束2。在主線程(main thread)中,我們需要

如何確保main()方法所在的線程是Java程序最后結(jié)束的線程?

要達(dá)到這種情況,我們必須知道以下幾點(diǎn)

1。Java中的線程結(jié)束在run方法完成后自動(dòng)結(jié)束

2。在主線程(main thread)中,我們需要獲取所有線程的引用。

3. 了解JDK提供的countdownlatch的用法

示例如下:

public static void main(string[]args)throws interruptedexception

{

//countdownlatch有幾個(gè)線程作為計(jì)數(shù)器記錄,例如,有兩個(gè)線程

countdownlatch latch=new countdownlatch(2)

worker Worker1=new worker(閂鎖)

worker worker2=new worker(閂鎖)

Worker1。Start()//開始線程

worker2。Start()//]//等待所有工人完成他們的工作等待()

系統(tǒng)輸出打?。ā八泄ぷ髟凇眘df.format格式(new Date())

}

類工作線程擴(kuò)展

{

私有CountDownLatch閂鎖

公共工作線程(CountDownLatch閂鎖)

{這個(gè)。門閂=latch

}

公共void Run(){

xxxxx

//在run方法結(jié)束之前,將線程計(jì)數(shù)器減少一個(gè)倒數(shù)計(jì)時(shí)在Java程序中,可以使用java.lang.System系統(tǒng)但是使用exit方法的本質(zhì)是終止JVM的運(yùn)行。如果另一個(gè)程序同時(shí)運(yùn)行,使用exit方法也會終止程序,在這種情況下應(yīng)該避免使用interrupt(),它可以用來中斷和退出正在運(yùn)行的進(jìn)程。對于多線程程序,必須關(guān)閉所有非守護(hù)進(jìn)程。exit方法用于僅當(dāng)程序異常退出時(shí)才退出程序。