Concurrency Clojure未来的承诺取决于我

Concurrency Clojure未来的承诺取决于我,concurrency,clojure,Concurrency,Clojure,当我运行下面的代码时,它基本上按照我的预期工作,只是在将来完成后它会挂起。我错过了什么——某种“关闭代理/线程”呼叫?我该怎么做 (def name-to-greet (promise)) (future (println "Hello," @name-to-greet)) (print "What is your name? ") (flush) (deliver name-to-greet (read-line)) Futures使用代理线程池,它使用非守护进程线程,这意味着C

当我运行下面的代码时,它基本上按照我的预期工作,只是在将来完成后它会挂起。我错过了什么——某种“关闭代理/线程”呼叫?我该怎么做

(def name-to-greet (promise))

(future
    (println "Hello," @name-to-greet))

(print "What is your name? ")
(flush)
(deliver name-to-greet (read-line))

Futures使用代理线程池,它使用非守护进程线程,这意味着Clojure在调用之前不会关闭。imo,这是假的(见),我提出的建议,富人说他会考虑后1.2左右。p>