请分享您的想法,参与2024年Clojure状态调查!

欢迎!请查看关于页面,了解更多关于这个站点如何工作的信息。

0
core.async

一旦创建了一个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报告)
...