I have a data stream that I process in several ways ... so I would like to send a copy of every message I receive for several purposes so that these goals can be executed in parallel ... however I need to set BoundedCapacity to my blocks, because data is transferred faster than my goals can process it, and there is a ton of data. Without BoundedCapacity, I would quickly run out of memory.
However, the problem is that BroadcastBlock will discard messages if the target cannot process it (due to BoundedCapacity).
I need a BroadcastBlock package that will not send messages, but will essentially refuse additional input until it can deliver messages for each purpose, and then ready for more.
Is there something like this, or did someone write a custom block that behaves this way?
source share