java - 垃圾收集器可以调用多少次?
问题描述
我们可以在一个 Java 程序中多次调用垃圾收集器吗?
解决方案
如果“调用垃圾收集器”的意思是“调用System.gc()
——你可以随心所欲地执行它。它可能有一些效果,也可能没有。根据具体情况,它可能会使你的应用程序性能更好,或者它可能会使事情变得更糟。
现代 Java 实现旨在使用完全透明的 GC 运行。我的经验是,它很少有助于将 GC 付诸行动,尽管几乎总是,调用gc()
确实会从 JVM 引发某种响应——它通常不会被完全忽略。
我见过使用重复调用来gc()
克服应用程序中的错误的应用程序(通常与资源管理有关);甚至,非常偶尔,JVM 中的错误。
不过,总的来说,我希望如果您发现您的应用程序需要经常戳 GC,那么有些东西出了问题,而现在,很可能是应用程序。
推荐阅读
- string - string[] 包括 EFCore2.1
- r - R中的自定义Keras损失函数,带有case_when函数
- c# - 试图找到第 10001 个素数,c#
- c# - 'Ref' 和 'Out' 参数的内存分配,有什么区别吗?
- mysql - Why type data "long blob" in mysql read as "int8" in data explorer MATLAB?
- javascript - Gatsby v2 项目中的缓存问题
- ibm-cloud - 在没有 procfile 的 IBM Bluemix 上部署非 Web 应用程序 (python)?
- android - Ctrl + C vs Ctrl + Z for pausing repo sync?
- r - 使用公式(而不是函数)指定 map2() 的选项
- java - 在云环境中,使用哪些技术让客户端上传要处理的文件的好方法是什么?