Closed
Description
stack :
signal 6 (SIGABRT), code -6 (?), fault addr 00004d37
#00 pc 0x39acc /system/lib/libc.so (tgkill+12)
#01 pc 0x13dad /system/lib/libc.so (pthread_kill+52)
#02 pc 0x14a27 /system/lib/libc.so (raise+10)
#03 pc 0x11145 /system/lib/libc.so (???)
#04 pc 0xf6ac /system/lib/libc.so (abort+4)
#05 pc 0x37291 /data/app/com.xxxx-1/lib/arm/libj2v8.so (???)
#06 pc 0x3943ed /data/app/com.xxxx-1/lib/arm/libv8.so (v8::HandleScope::Initialize(v8::Isolate*)+100)
#07 pc 0x394381 /data/app/com.xxxx-1/lib/arm/libv8.so (v8::HandleScope::HandleScope(v8::Isolate*)+4)
#08 pc 0xbccdc /data/app/com.xxxx-1/lib/arm/libnode.so (node::Environment::CheckImmediate(uv_check_s*)+40)
- Version:10.3.0
- Platform:android:
Subsystem:
V8 fatat handler message : Entering the V8 API without proper locking in place (HandleScope::HandleScope)
This occurs by chance.
I noticed :
uv_check_start(immediate_check_handle(), CheckImmediate);
Actually I place all the operations of node in a single thread and use a V8::Locker.
Is it possible that the CheckImmediate will switch to another thread?
there's V8 HandleScope::Initialize code:
Utils::ApiCheck(
!v8::Locker::IsActive() ||
internal_isolate->thread_manager()->IsLockedByCurrentThread() ||
internal_isolate->serializer_enabled(),
"HandleScope::HandleScope",
"Entering the V8 API without proper locking in place");