run event on separate thread