Emit events in serial or parallel with support for synchronous and asynchronous listeners