当我运行以下简单程序时,打印"后信息"消息后需要一分钟才能完成。
$ lein run -m logger.core
(ns logger.core
(:require [taoensso.timbre :as timbre]))
(defn -main []
(println "before info")
(timbre/info "hello world")
(println "after info"))
如果我注释掉(timbre/info "hello world")
,浪费时间就会完全消失。
原因是什么?我怎样才能避免这种情况?
提前谢谢。
您需要关闭代理。
(ns logger.core
(:require [taoensso.timbre :as timbre]))
(defn -main []
(println "before info")
(timbre/info "hello world")
(shutdown-agents)
(println "after info"))
因为很可能 Leiningen 也在编译 Timbre 库及其所有依赖项。