UNPKG

@metamask/ocap-kernel

Version:
1 lines 1.21 kB
{"version":3,"file":"gc-engine.mjs","sourceRoot":"","sources":["../../src/services/gc-engine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW;AACpB,OAAO,EAAE,WAAW;AAEpB,uBAAuB;AACvB,IAAI,MAAM,GAAG,UAAU,CAAC,EAAE,CAAC;AAC3B,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;IACjC,uBAAuB;IACvB,EAAE,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC;IACrC,MAAM,GAAG,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IAClC,MAAM,CAAC,MAAM,CAAC,CAAC;IACf,iEAAiE;IACjE,0DAA0D;IAC1D,mEAAmE;IACnE,0DAA0D;IAE1D,mDAAmD;IACnD,2CAA2C;AAC7C,CAAC;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC","sourcesContent":["import v8 from 'v8';\nimport vm from 'vm';\n\n/* global globalThis */\nlet bestGC = globalThis.gc;\nif (typeof bestGC !== 'function') {\n // Node.js v8 wizardry.\n v8.setFlagsFromString('--expose_gc');\n bestGC = vm.runInNewContext('gc');\n assert(bestGC);\n // We leave --expose_gc turned on, otherwise AVA's shared workers\n // may race and disable it before we manage to extract the\n // binding. This won't cause 'gc' to be visible to new Compartments\n // because SES strips out everything it doesn't recognize.\n\n // // Hide the gc global from new contexts/workers.\n // v8.setFlagsFromString('--no-expose_gc');\n}\n\nexport const engineGC = bestGC;\n"]}