mirror of
https://github.com/morluto/rea.git
synced 2026-11-14 18:52:48 +00:00
process.exit() shuts Node's platform down without tearing the V8 isolate down. When a concurrent Maglev or baseline compile job is waiting for a collection at that moment, the main thread blocks forever in NodePlatform::Shutdown joining it (captured with gdb on Node 24.22.1). A one-shot command that called Incur's exit then never terminated: about 1 in 20 such exits after the lazy CLI loading change, and rarely on main. The exit callback now sets process.exitCode and lets the event loop drain, so Node tears the isolate down in order. A handle that outlives a one-second grace still gets the forced exit with the same status. Co-Authored-By: gensokyo-dev <342580529+gensokyo-dev@users.noreply.github.com>