because some variable need to be used in different methods, it's necessary to create context for different thread, but if the thread is callbacked and to exit the work at present, the corresponding thread context need to be deleted.
in addition, one thread may run an operator many times in different lifetime result from the corresponding thread has been callbacked in threadpoll.