don't use Thread* to create thread