added concurrency for nonblocking event handler