0

GC.start有人可以给我一个关于打电话是个好主意的情况的例子吗?我正在阅读GC课程文档,但我无法想象使用它的好情况......

4

1 回答 1

0

只有在非常特定的情况下,当您想要编写高性能代码并且您确切地知道自己在做什么时。

您必须注意到,虽然垃圾收集器非常方便并且可以为开发人员省去很多麻烦,但它总是比非垃圾收集器的实现慢——如果这些实现被正确开发的话。垃圾收集器会以一定的时间间隔中断您的程序,并在恢复程序之前进行清理。这些中断当然会导致延迟。因此,如果您想挤出最后一点性能,那么您可以考虑禁用自动垃圾收集并手动执行操作。

您还可以将垃圾收集器置于活动模式并在任何关键操作之前手动触发它,希望它不会在此操作期间中断您的程序,因为它已经清理了。

但除非你绝对必须这样做,否则我不会干涉这些事情。在大多数情况下,延迟几乎不会引起注意,我想不出垃圾收集器有什么问题。它只是工作,是一个很好的工具。

于 2016-07-18T19:52:41.397 回答