add timeout for worker