make signal handler thread local
fix bug that dlopen called from multiple thread at the same time, though it is not assured to thread safe