asaskevich / EventBus

[Go] Lightweight eventbus with async compatibility for Go
MIT License
1.74k stars 220 forks source link

Handler locking should not affect eventbus lock #41

Closed tetratorus closed 4 years ago

tetratorus commented 5 years ago

A transactional async subscription receives two messages. The first message blocks forever in the handler. The second message blocks forever in handler.Lock(), and never releases eventbus.lock.Unlock(). And so the eventbus deadlocks.

asaskevich commented 4 years ago

Thank you!