多线程之创建线程
在Java中,線程能區(qū)分兩種不同類型的線程:前臺線程和后臺線程。這兩者的區(qū)別就是:應(yīng)用程序必須運行完所有的前臺線程才可以退出;而對于后臺線程,應(yīng)用程序則可以不考慮其是否已經(jīng)運行完畢而直接退出,所有的后臺線程在應(yīng)用程序退出時都會自動結(jié)束。
1.如何創(chuàng)建一個后臺線程
新創(chuàng)建的線程默認(rèn)都是前臺線程。如果某個線程對象在啟動前調(diào)用了 setDaemon(true) 語句,這個線程就會變成后臺線程。
/*對于java程序來說,只要還有一個前臺線程在運行,這個進程就不會結(jié)束,如果一個進程中只有后臺線程運行這個進程就會結(jié)束。新創(chuàng)建的線程默認(rèn)都是前臺線程。如果某個線程對象在啟動前調(diào)用了 setDaemon(true) 語句,這個線程就會變成后臺線程。*/ class DamonThread implements Runnable {public void run() {System.out.println(Thread.currentThread().getName() + "---is running.");//currentThread() 方法:獲取當(dāng)前線程對象 getName() 方法:獲取名字 } } public class 后臺線程 {public static void main(String[] args) {System.out.println("main 線程是后臺線程嗎?" + Thread.currentThread().isDaemon());DamonThread dt = new DamonThread();//創(chuàng)建一個 DamonThread 對象 dtThread t = new Thread(dt, "后臺線程");//創(chuàng)建線程 t 共享 dt 資源System.out.println("t 線程是后臺線程嗎?" + t.isDaemon());//判斷是否為后臺線程t.setDaemon(true);//將線程 t 設(shè)置為后臺線程t.start(); //調(diào)用 static 方法開啟線程 tfor(int i=0; i<10; i++) {System.out.println(i);}} }?
轉(zhuǎn)載于:https://www.cnblogs.com/lvshiyu/p/8205175.html
總結(jié)
- 上一篇: appium GUI介绍
- 下一篇: Django集合Ueditor