Chcesz utworzyć uchwyt Persistent i uczynić go słabym (v8 :: Persistent :: MakeWeak (dane, cb)). W wywołaniu zwrotnym można usunąć obiekt C++. Jak zwykle w przypadku garbage collector, dokładny czas, w którym zostanie określona słaba osiągalność, zależy od tego, kiedy GC jest wykonywane. Dzięki temu zasoby natywne mogą zostać zwolnione znacznie później niż się spodziewasz. Możesz poinformować V8 o ilości natywnych zasobów, które przechowujesz (v8 :: AdjustAmountOfExternalAllocatedMemory).
węzła „ObjectWrap” obudowuje rodzimej dwukierunkową/JS mapowanie obiektów i słaby callback: https://github.com/ry/node/blob/master/src/node_object_wrap.h
możliwe duplikat [Jak uwolnić zawinięty C obiekt ++ gdy wiąże obiekt Javascript jest śmieci zebranych w V8?] (Http: //stackoverflow.com/questions/173366/how-do-you- free-a-wrapped-c-object-when-associated-javascript-object-is-garbag) –