mirror of
https://github.com/phpv8/v8js.git
synced 2024-12-23 04:51:53 +00:00
Properly stop timer thread, closes #138
We need to reset V8JSG(timer_stop) and V8JSG(timer_thread), otherwise subsequent requests fail on multi-request SAPIs. If we don't reset those, a subsequent request will not start a new timer thread (as V8JSG(timer_thread) != NULL), but will try to join the thread (once more) in GSHUTDOWN as V8JSG(timer_thread) still is non-NULL and hence cause program termination.
This commit is contained in:
parent
b350871795
commit
79f2056bc3
2
v8js.cc
Normal file → Executable file
2
v8js.cc
Normal file → Executable file
@ -129,6 +129,8 @@ static PHP_RSHUTDOWN_FUNCTION(v8js)
|
|||||||
if (V8JSG(timer_thread)) {
|
if (V8JSG(timer_thread)) {
|
||||||
V8JSG(timer_stop) = true;
|
V8JSG(timer_stop) = true;
|
||||||
V8JSG(timer_thread)->join();
|
V8JSG(timer_thread)->join();
|
||||||
|
V8JSG(timer_stop) = false;
|
||||||
|
V8JSG(timer_thread) = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if V8JS_DEBUG
|
#if V8JS_DEBUG
|
||||||
|
Loading…
Reference in New Issue
Block a user