【发布时间】:2014-11-17 09:25:18
【问题描述】:
我正在尝试从队列中获取 n 条消息(使用 langohr)。我有一个工作版本,但我想知道是否有更好的 clojurist 方法来做到这一点:
(def not-nil? (complement nil?))
(defn get_message [queue]
(let [[_ payload] (lb/get ch queue)]
(if (not-nil? payload)
(String. payload "UTF-8"))))
(take 4 (take-while not-nil? (repeatedly (partial get_message "my_queue"))))
所以只要队列中有消息,我就最多提取 N 条消息。
有没有更好的clojurist 方法来做到这一点?
【问题讨论】: