這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān)怎么在java中使用守護(hù)線(xiàn)程,文章內(nèi)容豐富且以專(zhuān)業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
成都創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),合水企業(yè)網(wǎng)站建設(shè),合水品牌網(wǎng)站建設(shè),網(wǎng)站定制,合水網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷(xiāo),網(wǎng)絡(luò)優(yōu)化,合水網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力??沙浞譂M(mǎn)足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專(zhuān)業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶(hù)成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。
Java的特點(diǎn)有哪些 1.Java語(yǔ)言作為靜態(tài)面向?qū)ο缶幊陶Z(yǔ)言的代表,實(shí)現(xiàn)了面向?qū)ο罄碚摚试S程序員以?xún)?yōu)雅的思維方式進(jìn)行復(fù)雜的編程。 2.Java具有簡(jiǎn)單性、面向?qū)ο?、分布式、安全性、平臺(tái)獨(dú)立與可移植性、動(dòng)態(tài)性等特點(diǎn)。 3.使用Java可以編寫(xiě)桌面應(yīng)用程序、Web應(yīng)用程序、分布式系統(tǒng)和嵌入式系統(tǒng)應(yīng)用程序等。
1.守護(hù)線(xiàn)程概念
專(zhuān)門(mén)用于服務(wù)其他的線(xiàn)程,如果其他的線(xiàn)程(即用戶(hù)自定義線(xiàn)程)都執(zhí)行完畢,連main線(xiàn)程也執(zhí)行完畢,那么jvm就會(huì)退出(即停止運(yùn)行)。典型的守護(hù)線(xiàn)程就是垃圾回收線(xiàn)程。可以通過(guò)調(diào)用Thead類(lèi)的setDaemon(true)方法設(shè)置當(dāng)前的線(xiàn)程為守護(hù)線(xiàn)程。
2.守護(hù)線(xiàn)程使用事項(xiàng)
(1)setDaemon(true)必須在start()方法前執(zhí)行,否則會(huì)拋IllegalThreadStateException異常;
(2)在守護(hù)線(xiàn)程中產(chǎn)生的新線(xiàn)程也是守護(hù)線(xiàn)程 ;
(3)不是所有的任務(wù)都可以分配給守護(hù)線(xiàn)程來(lái)執(zhí)行,比如讀寫(xiě)操作或者計(jì)算邏輯。
public class DaemonThread extends Thread { private int i = 0; @Override public void run() { super.run(); try { while (true){ i++; System.out.println("i = " + i); Thread.sleep(1000); } }catch (Exception e){ e.printStackTrace(); } } } public class DaemonThread extends Thread { private int i = 0; @Override public void run() { super.run(); try { while (true){ i++; System.out.println("i = " + i); Thread.sleep(1000); } }catch (Exception e){ e.printStackTrace(); } } }
3.守護(hù)線(xiàn)程屬性繼承父線(xiàn)程實(shí)例
直接看 Thread 源代碼構(gòu)造方法里面就可以知道,代碼如下:
private Thread(ThreadGroup g, Runnable target, String name, long stackSize, AccessControlContext acc, boolean inheritThreadLocals) { ...省略一堆代碼 this.daemon = parent.isDaemon(); ...省略一堆代碼 }
上述就是小編為大家分享的怎么在java中使用守護(hù)線(xiàn)程了,如果剛好有類(lèi)似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。