Separate thread for event worker