我在Mac OS X Mavericks上运行Netbeans 8.0。
我有一个非常简单的项目来验证我在执行项目时遇到的问题,并且在我杀死Netbeans中的项目进程后看到JVM实例仍在执行。
public class Tester {
private static final Logger logger=Logger.getLogger(Tester.class);
public static void main ( String[] args ){
for( int x=0;x<34324324;x++){
logger.info("hey");
try {
Thread.sleep(2000);
} catch (InterruptedException ex) {
java.util.logging.Logger.getLogger(Tester.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
}
从Netbeans内部执行此操作后,我从Netbeans中删除了项目执行,并在终端上执行了一个进程列表,与此项目进程相关的JVM进程仍在执行。我甚至拖尾我的log4j日志文件,它仍在写入记录器。
即使在完全杀死Netbeans之后 - JVM进程仍在运行。
我注意到这个错误报告: https://netbeans.org/bugzilla/show_bug.cgi?id=232322
然而,这个错误报告特别是在多线程应用程序的上下文中,我的内容显然不是。