And I'd revers the order of the second two sentences:

`
Starts sending events to attached listeners. Note that this will first send any previously buffered events that were posted before starting.
`

Also I'd add a `var started` and throw an `IllegalStateException` if someone tries to start it twice. Otherwise you'll have two threads in that case.