2
考慮下面的代碼片斷:「反覆」在Core.Async
(require '[clojure.core.async :refer :all])
(def my-chan (chan (buffer 10)))
(go (while true
(>! my-chan (rand))))
這基本上提供了一個緩衝的信道,它總是包含一些10的隨機數。當通道被消耗時,緩衝區被再次填充。
core.async中是否存在對此的抽象?由於有操縱渠道的消費換能器,有可能是一些生產他們的還有:
對於序列人會去這樣的事情:
(def my-seq
(map (fn [_] (rand)) (range)))
,或者只是:
(def my-seq (repeatedly rand))
哪一個當然沒有被緩衝,但它可能會給我想要的東西。
我不確定你在找什麼..... .....? –