java - 什么时间后调用 gc

标签 java playframework

我正在使用 play 框架。我想让我的一个对象每次都保持 Activity 状态,无论它现在是否使用,因为它稍后会被使用。

创建对象是一个耗时的过程(包含10L条记录)。如果一段时间内没有访问该对象,则会对其进行垃圾回收。

我的想法是访问该对象并在对其进行GC之前使其保持 Activity 状态。我尝试使用 @Before 注释访问函数中的对象,但它不起作用。我的主要想法是保持对象的活力。如果我知道 gc 函数在什么时间被调用,那么我可以使用 playframework 中的作业功能来保持它的 Activity 。

最佳答案

只有当不再有对象的引用时,垃圾收集器才会清理该对象。您的设计应该确保这一特定对象存在并且至少被一个变量引用,以确保它在垃圾收集期间不会被删除。

您可能想在此处研究使用单例风格的设计模式,它将确保存在对对象的引用,但一次只有一个对象。

这样,该对象就不会被垃圾回收,因为它至少被一个变量引用。

我希望这会有所帮助。

关于java - 什么时间后调用 gc,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7831433/

相关文章:

postgresql - 在 Play 1.2.4 Framework 中显示 BLOB 图片

java - 如何使用java将ucs2编码文件转换为UTF-8或UTF-16或ANSI编码格式

java - 如何在 java 中使用由 openssl 生成的 .key 和 .crt 文件?

java - 如何在java中显示一个工作但虚拟的进度条

playframework - 将类添加到 Play 2 自定义 FieldConstructor 中的输入

scala - Play Framework 2.5 scala i18n

java - 引导 Play 应用程序

java - 是否可以使用 geotools 读取 shapefile 而无需指定文件的 url?

Java:为什么我们需要转换 float 而不是 double ?

java - 如何使已用索引无法替换