1
0
Fork 0
tractor/tractor
Tyler Goodlet 3deb1b91e6 Wake all broadcast consumers on EOC
Without this wakeup you can have tasks which re-enter `.receive()`
and get stuck waiting on the wakeup event indefinitely. Whenever
a ``trio.EndOfChannel`` arrives we want to make sure all consumers
at least know about it and don't block. This previous behaviour was
basically a bug.

Add some state flags for tracking if the broadcaster was either
cancelled or terminated via EOC mostly for testing and debugging
purposes though this info might be useful if we decide to offer
a `.statistics()` like API in the future.
2021-12-16 16:16:14 -05:00
..
testing Re-license code base for distribution under AGPL 2021-12-14 23:33:27 -05:00
trionics Wake all broadcast consumers on EOC 2021-12-16 16:16:14 -05:00
__init__.py Re-license code base for distribution under AGPL 2021-12-14 23:33:27 -05:00
_actor.py Re-license code base for distribution under AGPL 2021-12-14 23:33:27 -05:00
_child.py Re-license code base for distribution under AGPL 2021-12-14 23:33:27 -05:00
_clustering.py Re-license code base for distribution under AGPL 2021-12-14 23:33:27 -05:00
_debug.py Re-license code base for distribution under AGPL 2021-12-14 23:33:27 -05:00
_discovery.py Re-license code base for distribution under AGPL 2021-12-14 23:33:27 -05:00
_entry.py Re-license code base for distribution under AGPL 2021-12-14 23:33:27 -05:00
_exceptions.py Re-license code base for distribution under AGPL 2021-12-14 23:33:27 -05:00
_forkserver_override.py Re-license code base for distribution under AGPL 2021-12-14 23:33:27 -05:00
_ipc.py Re-license code base for distribution under AGPL 2021-12-14 23:33:27 -05:00
_mp_fixup_main.py Re-license code base for distribution under AGPL 2021-12-14 23:33:27 -05:00
_portal.py Re-license code base for distribution under AGPL 2021-12-14 23:33:27 -05:00
_root.py Re-license code base for distribution under AGPL 2021-12-14 23:33:27 -05:00
_spawn.py Re-license code base for distribution under AGPL 2021-12-14 23:33:27 -05:00
_state.py Re-license code base for distribution under AGPL 2021-12-14 23:33:27 -05:00
_streaming.py Re-license code base for distribution under AGPL 2021-12-14 23:33:27 -05:00
_supervise.py Re-license code base for distribution under AGPL 2021-12-14 23:33:27 -05:00
log.py Re-license code base for distribution under AGPL 2021-12-14 23:33:27 -05:00
msg.py Re-license code base for distribution under AGPL 2021-12-14 23:33:27 -05:00