5

我有一个基本的 Clojure 脚本,其中包含:

(def test
    (future
        (loop []
            (println "Running")
            (recur))))

但是,如果我使用以下命令执行文件:

java -cp clojure-1.3.0.jar clojure.main test.clj

然后屏幕充满“正在运行”。我怎样才能改变它,以便未来在我想要的时候运行?

注意:我意识到这将永远运行,这只是我的问题的一个例子。

4

1 回答 1

11

不能立即运行的未来只是一个没有参数的函数。

所以:

(defn test []
  (println "Running")
  (recur))

...之后...

(future (test))
于 2011-12-16T09:01:59.537 回答