由于垃圾收集在后台偶尔运行,
演示并不容易。然而,一种方法是使用
使用finalize()方法。请记住,当对象即将被回收时,finalize() 会被调用。正如所解释的,对象不一定会在不再需要时立即回收。相反,垃圾收集器会等待,直到它可以有效地执行其收集,通常是在有许多未使用的对象时。
因此,为了通过 Finalize() 方法演示垃圾收集,我们必须
创建和销毁各种对象 - 这正是我们在这个项目中要做的。
1 创建一个名为 finalize.java 的新文件。
2 创建FDemo类:
构造函数将实例变量 x 设置为已知值
的。在此示例中,x 用作对象 ID。方法
Finalize() 在对象被回收时显示 x 的值。特别令人感兴趣的是generator()。此方法创建并立即丢弃 FDemo 对象。您将在下一步中看到它是如何使用的。
3 创建 Finalize 类:
该类创建一个名为 ob 的初始 FDemo 对象。然后使用
ob,它通过调用ob中的generator()创建了100,000个对象。结果,创建并丢弃了 100,000 个对象。在
中间的不同时间点
过程中,将会发生垃圾收集。许多因素会影响确切的频率或时间,例如初始可用内存量和操作系统。然而,在某些时候您将开始看到由finalize()生成的消息。如果看不到它们,请尝试通过增加 for 循环中的计数来增加生成的对象数量。
以上就是试试这个:垃圾收集和终止的详细内容,更多请关注php中文网其它相关文章!
版权声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系 yyfuon@163.com