在Java中有兩種線程嫁审,一種是用戶線程,另外一種就是守護(hù)(Daemon)線程赖晶。
什么是守護(hù)線程律适?它是一種特殊的線程,它的特性有陪伴的含義遏插,當(dāng)進(jìn)程中不存在非守護(hù)線程了捂贿,則守護(hù)線程自動(dòng)銷毀,典型的守護(hù)線程就是垃圾回收線程胳嘲。當(dāng)進(jìn)程中沒(méi)有非守護(hù)線程了厂僧,則垃圾回收線程也沒(méi)有存在的必要了,自動(dòng)銷毀了牛。
通俗比喻一下颜屠,任何一個(gè)守護(hù)線程都是整個(gè)JVM中的所有非守護(hù)線程的保姆,只要當(dāng)前JVM實(shí)例存在非守護(hù)線程并且沒(méi)有結(jié)束鹰祸,也即是幼兒園中有小朋友甫窟,那么保姆也就是守護(hù)線程就要工作,只要當(dāng)最后一個(gè)非守護(hù)線程結(jié)束時(shí)蛙婴,幼兒園中沒(méi)有小朋友了粗井,則守護(hù)線程隨著JVM一起結(jié)束工作。
守護(hù)線程的作用是為其它線程運(yùn)行提供便利服務(wù)敬锐,最典型的應(yīng)用就是GC垃圾回收器背传,它就是一個(gè)很稱職的守護(hù)者呆瞻。
例如:
最后守護(hù)線程也退出了台夺。