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

欢迎!有关如何工作的更多信息,请参阅关于页面。

0
Clojure

Clojure的reducers是唯一不支持绑定传输的并行结构。

`
(def ^:dynamic bar "在主线程中。")

(binding [bar "在reducers线程中。"]

     (r/fold (fn [& args]
               bar) (vec (range 100000))))

=> "在主线程中."
`

您必须手动使用bound-fn

`
(binding [bar "在reducers线程中。"]

     (r/fold (bound-fn [& args]
                       bar) (vec (range 100000))))

=> "在reducers线程中."
`

我建议将其增强以与pmap、future、agents和core.async具有相同的行为。

1 个答案

0
参考:https://clojure.atlassian.net/browse/CLJ-2214(由alex+import汇报)
...