packagecom.aaa.threaddemo;/** 一 Java后臺線程?
java多線程并發處理?* 守護線程--也稱“服務線程”,他是后臺線程,
* 它有一個特性,即為用戶線程 提供 公共服務,在沒有用戶線程可服務時會自動離開。
java基礎知識。*
* 優先級:守護線程的優先級比較低,用于為系統中的其它對象和線程提供服務。
設置:通過 setDaemon(true)來設置線程為“守護線程”;
是在 線程對象創建 之前 用線程對象的 setDaemon 方法。
在 Daemon 線程中產生的新線程也是 Daemon 的。
線程則是 JVM 級別的
example: 垃圾回收線程就是一個經典的守護線程,當垃圾回收線程是 JVM 上僅剩的線
程時,垃圾回收線程會自動離開。它始終在低級別的狀態中運行,用于實時監控和管理系統
中的可回收資源。
生命周期:守護進程(Daemon)是運行在后臺的一種特殊進程。它獨立于控制終端并且周
期性地執行某種任務或等待處理某些發生的事件。也就是說守護線程不依賴于終端,但是依
賴于系統,與系統“同生共死”。當 JVM 中所有的線程都是守護線程的時候,JVM 就可以退
出了;如果還有一個或以上的非守護線程則 JVM 不會退出
二 Java中的線程分類?
用戶線程和守護線程
三 用戶線程?
用戶線程就是前臺線程
main() 主函數就是前臺線程,是程序中必須執行完成的。
所有的前臺線程結束后,后臺線程才結束。
四 二者區別
前臺執行完畢,后臺無論是否執行完成,都會被結束!
*
**/
public classHouTai {public static voidmain(String[] args) {
HouThread houThread= newHouThread();//在前臺線程設置一個 4 次的for循環,前臺線程結束后,后臺線程也會結束。
for (int i = 0; i < 4; i++) {//把 houThread 設置為后臺線程
houThread.setDaemon(true);
houThread.start();
}
}
}class HouThread extendsThread{
@Overridepublic voidrun() {while (true) {try{
System.out.println(" 我是后臺線程 " +Thread.currentThread().getName());
}catch(Exception e) {
System.out.println(" 出錯了");
}
}
}
}
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态