diff --git a/lib/mini_racer.rb b/lib/mini_racer.rb index e615a4d..38748e7 100644 --- a/lib/mini_racer.rb +++ b/lib/mini_racer.rb @@ -316,6 +316,7 @@ def ensure_gc_thread @last_eval = Process.clock_gettime(Process::CLOCK_MONOTONIC) @ensure_gc_mutex.synchronize do @ensure_gc_thread = nil if !@ensure_gc_thread&.alive? + return if !Thread.main.alive? # avoid "can't alloc thread" exception @ensure_gc_thread ||= Thread.new do ensure_gc_after_idle_seconds = @ensure_gc_after_idle / 1000.0 done = false