When an event is called from SongPlayer's loop which is in async thread it can't be cancelled. Affected events are: SongLoopEvent and SongDestroyingEvent.
SongPlayer also continues playing the Song without waiting for event listeners of events bellow to finish their execution. Affected events are: SongStoppedEvent, SongNextEvent and SongEndEvent. For example when SongPlayer is paused in SongNextEvent it plays first few notes of the next Song before it's paused.
It is caused by schedulling the events execution in order to execute them in synchronized thread (not async with server main thread).