gpt4 book ai didi

node.js - 是否可以跳过 v8 GC 收集的对象?

转载 作者:太空宇宙 更新时间:2023-11-04 03:22:53 25 4
gpt4 key购买 nike

我在内存中有很多长期存在的对象(~10GB),并且我绝对知道这些对象永远不会被 GC 收集。问题是标记-清除垃圾回收操作需要很长时间(90秒)来检查内存中的所有对象及其关系。我需要某种方法来跳过收集我的对象。

我尝试过使用Persistent::MarkIndependent,但它对我不起作用。

最佳答案

如果有问题的对象是通过 C++ 句柄实时保存的引用,那么它们将不会被收集。但是,收集器仍然必须遍历它们,因为它必须找到对它们包含的其他对象的所有引用。如果它不这样做,那么您可能会得到悬空指针并导致虚拟机崩溃。

所以,不,至少按照你描述的方式,这是不可能的。 (另一方面,如果这些对象不能包含随机指针,因为例如它们是数组缓冲区或字符串,那么 GC 知道它不需要遍历它们,因此不应该出现性能问题。)

关于node.js - 是否可以跳过 v8 GC 收集的对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48228834/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com