标签: java multithreading
我想知道在以下情况中会发生什么:
假设我需要监控一些日志文件并偶尔滚动它。为此,我创建一个在while(true)循环中运行的守护程序线程,偶尔会产生关闭文件的用户线程,并在需要时打开一个新的。
但是,当某些用户线程终止并且JVM决定是时候关闭并启动关闭序列时,会发生什么呢?但是在它实际关闭之前,我的守护进程会产生另一个用户线程?这甚至会发生吗?如果可以,用户线程会像守护进程一样死掉,还是jvm有一些机制来防止这种情况?