add pthreads wrapper