2024年Clojure调查中分享您的想法!

欢迎!请查阅关于页面了解此页面如何工作的一些更多信息。

0
core.async

我们想要在consumer离开场景中使用这个,还是希望将其嵌入到通道实现中?

`
(defn drain!
"完全消耗并丢弃一个通道。当ch被完全清空时返回一个通道"
[ch]
(go-loop []
(if (some? (<! ch))
request

 (recur))))

`

0
评论由:samumbach发表

当一个通道的缓冲区满了时,close!和/或在该通道上的{{untap}}不足以取消阻塞同一多通道上的其他 taps。这是在使用drain!时必要的一个特定案例;请确保在untap/close之后确保清空,以避免竞争条件。

0
参考: https://clojure.atlassian.net/browse/ASYNC-66 (由gshayban报告)
欢迎光临Clojure问答,您可以在那里提出问题并获得Clojure社区成员的答案。
...