Java中的精灵线程及其实现
精灵线程特性
精灵线程,也叫守护线程,它依赖于其他非精灵线程而存在。守护线程的生命周期取决于其他非守护线程的生命周期,即线程从无到有,再从有到无的过程。比如,在现实中存在的生命周期概念:花种子→骨朵→花→果实→凋谢→死亡。一旦其他非守护线程执行完毕,守护线程也必须结束。非守护线程不一定只是主线程。
精灵线程的作用
在Java中,精灵线程非常有用。在JVM中就有一个守护线程,它就是垃圾回收线程。JVM的垃圾回收机制采用一个垃圾收集精灵线程实现,简称GC(Garbage Collection)。它指的是内存垃圾的回收,本质上是一个守护线程回收内存中的无用内存。程序员无法要求JVM立即回收垃圾内存,但可以建议或干预JVM回收。程序员可使用System.gc()来建议JVM回收,但不一定马上被采纳。
实现精灵线程
要使一个线程成为精灵线程,需使用setDaemon(true/false)方法,true代表将该线程对象所代表的线程设置为精灵线程。
精灵线程,也叫守护线程,它依赖于其他非精灵线程而存在。守护线程的生命周期取决于其他非守护线程的生命周期,即线程从无到有,再从有到无的过程。比如,在现实中存在的生命周期概念:花种子→骨朵→花→果实→凋谢→死亡。一旦其他非守护线程执行完毕,守护线程也必须结束。非守护线程不一定只是主线程。
精灵线程的作用
在Java中,精灵线程非常有用。在JVM中就有一个守护线程,它就是垃圾回收线程。JVM的垃圾回收机制采用一个垃圾收集精灵线程实现,简称GC(Garbage Collection)。它指的是内存垃圾的回收,本质上是一个守护线程回收内存中的无用内存。程序员无法要求JVM立即回收垃圾内存,但可以建议或干预JVM回收。程序员可使用System.gc()来建议JVM回收,但不一定马上被采纳。
实现精灵线程
要使一个线程成为精灵线程,需使用setDaemon(true/false)方法,true代表将该线程对象所代表的线程设置为精灵线程。
2.75MB
文件大小:
评论区