missionary

awb99 2024-07-30T02:12:29.212509Z

I have a m/ap producer with multiple consumers. Now when I start all consumers at the same time, then they all get all values. But when I have one consumer that is just delayed a little with (m/? 1) them this consumer does not get the "current" value of the producer. I assume this is because the event has happened and discrete flows do not keep old values. I tried to convert the discrete producer flow via m/relieve to a continuous flow, but that didn't work. This is my code: https://github.com/clojure-quant/missionary-test/blob/main/src/demo/connection.clj

awb99 2024-07-30T12:43:01.611449Z

Wow @itsfah what a difference! Thanks

Absolute Negativity 2024-07-30T05:30:34.670569Z

m/signal will give current value to new subscriber, but m/stream will only send new events as they occurred. This https://www.dustingetz.com/#/page/signals%20vs%20streams%2C%20in%20terms%20of%20backpressure%20(2023) helps me understand the difference.

awb99 2024-07-30T02:15:51.125159Z

My idea is that I can share a socket connection this way .. and the idea is that since socket connections can drop .. that it would make sense to have a conenction flow.