我有一个通道,在其中放入许多单独的值(顺便说一下JSON行)。
在删除通道中的值时,我希望将它们作为一个组进行批处理。信道中是否有take n
的概念,或者是否有将它们捆绑到向量/序列/列表中的方法?
您可以使用clojure.core.async/take
从频道中删除特定数量的项目。它们以新通道的形式返回,因此您仍然需要使用<!
、<!!
或take!
来单独处理它们。如果您想将它们作为一个组进行处理,可以使用clojure.core.async/into
将它们放入标准的Clojure数据结构中。