编程语言
首页 > 编程语言> > java-将调用System.exit(0);从主要运行垃圾收集之外的对象?

java-将调用System.exit(0);从主要运行垃圾收集之外的对象?

作者:互联网

我计划使用由我的main方法调用的对象来退出整个程序.该对象具有只运行System.exit(0)的方法.我的问题是,这样做安全吗?如果我从另一个对象运行System.exit(0),垃圾回收是否仍会从内存中清除整个程序,还是我有从内存中清除调用类的问题?我的想法是,或者由于JVM将终止,调用类将被垃圾回收,或者由于对象的堆栈框架位于主堆栈框架之上,所以我可能无法从内存中清除调用类.这主要是我对Java不够了解的问题…感谢您的帮助!

解决方法:

System.exit()是静态函数,因此在哪里调用它都无所谓.终止Java虚拟机的效果是相同的. JVM在终止时使用的任何资源都将回馈给OS.

来源:http://docs.oracle.com/javase/7/docs/api/java/lang/System.html#exit(int)

标签:garbage,java,exit-code,garbage-collection,exit
来源: https://codeday.me/bug/20191013/1906331.html