成人AV在线无码|婷婷五月激情色,|伊人加勒比二三四区|国产一区激情都市|亚洲AV无码电影|日av韩av无码|天堂在线亚洲Av|无码一区二区影院|成人无码毛片AV|超碰在线看中文字幕

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

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

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

要達到這種情況,我們必須知道以下幾點

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

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

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

示例如下:

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

{

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

countdownlatch latch=new countdownlatch(2)

worker Worker1=new worker(閂鎖)

worker worker2=new worker(閂鎖)

Worker1。Start()//開始線程

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

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

}

類工作線程擴展

{

私有CountDownLatch閂鎖

公共工作線程(CountDownLatch閂鎖)

{這個。門閂=latch

}

公共void Run(){

xxxxx

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