mirror of
https://github.com/lightninglabs/loop.git
synced 2026-08-18 13:08:28 +02:00
Some notification types are work requests and must not be dropped when a subscriber channel is temporarily full. Sending them synchronously from the global notification handler can stall the stream while a slow subscriber holds back reads. Add a per-subscriber queue for blocking notification classes and deliver those notifications from a worker tied to the subscriber context. Keep direct sends as the fallback for subscribers that do not need queued delivery. Use the queued path for static loop-in sweep requests and unfinished swap notifications, and fix subscriber removal to compare channel identity now that subscribers contain function fields. |
||
|---|---|---|
| .. | ||
| log.go | ||
| manager.go | ||
| manager_test.go | ||