C++ v8 |手动启动垃圾收集器

C++ v8 |手动启动垃圾收集器,c++,garbage-collection,v8,C++,Garbage Collection,V8,有没有办法在Google的V8引擎上手动启动垃圾收集器?我找不到它的任何参考资料。通常地面军事系统支持此功能。使用V8::AdjustAmountOfExternalAllocatedMemory 您可以将v8::HEAP->CollectAllGarbage函数公开给 通过命令标志expose\u gc的全局JavaScript命名空间。然后 只需调用gc() > p>可以通过语句:C++强制垃圾回收:< /p> while(!V8::IdleNotification()){} 参考资料

有没有办法在Google的V8引擎上手动启动垃圾收集器?我找不到它的任何参考资料。通常地面军事系统支持此功能。

使用V8::AdjustAmountOfExternalAllocatedMemory

  • 您可以将
    v8::HEAP->CollectAllGarbage
    函数公开给 通过命令标志expose\u gc的全局JavaScript命名空间。然后 只需调用
    gc()

  • > p>可以通过语句:C++强制垃圾回收:< /p>
    while(!V8::IdleNotification()){}

参考资料:


不完全是我要找的,但已经足够近了。谢谢。@RoeeGavirel在找到更好的答案时最好回答您自己的问题,不要接受错误的答案。链接已失效,该函数或字段似乎不再存在。现在处于隔离状态:v8命名空间中以前全局的所有内容都已移到隔离状态,因为每个隔离都是独立的。隔离->调整AmountofExternalAllocatedMemory是一个新函数,您可以使用它来调整v8认为用于支持它所知道的对象的内存量。当你创建一个V8对象来了解C++时,你通常希望通过siZeof(CPPOBJECTYPE),当你删除C++对象时,通过-sisiOf(CPOPBJCTEXTYPE)。对于测试,您可以简单地告诉v8,每个对象都使用了大量内存,并且它将进行更具攻击性的垃圾收集。yv8::IdleNotification似乎不再存在