added control mutexes, passing them to worker