2024 Clojure状态调查!分享您的想法。

欢迎!请访问关于页面以获取更多关于如何使用此网站的信息。

0
core.async

一旦创建了mix,mix内部的go-loop将会一直递归。显然,输入通道可以被解混,输出通道可以被关闭,但进程仍然不会终止。

可能mix应该支持类似(stop)的功能来使得mix关联的进程可以垃圾回收。对已停止的mix的操作应该可能抛出异常。

3 答案

0

评论由:gshayban

在0.1.278版本中,mix进程在它的输出通道关闭时终止(链接:1)。

(链接:1) https://github.com/clojure/core.async/blob/master/src/main/clojure/clojure/core/async.clj#L778

0

评论由:lgs32a

是的,已经通过使用put!的新返回行为进行了修复(我找不到关闭此问题的选项)。

0
参考: https://clojure.atlassian.net/browse/ASYNC-39(由lgs32a提交)
...