小编ril*_*man的帖子

为什么在使用println后,在clojure中使用'print'打印的字符串只出现在我的控制台中?

我在clojure中有以下代码:

(do
    (println "starting....")
    (sig! a 0)
    (sig! b 0)
    (future
      (Thread/sleep 4000)
      (println "switch 1")
      (sig! a 1)
      (sig! b 0)
      (Thread/sleep 4000)
      (println "switch 2")
      (sig! a 0)
      (sig! b 1)
      (Thread/sleep 4000)
      (println "switch 3")
      (sig! a 1)
      (sig! b 1)) nil))
Run Code Online (Sandbox Code Playgroud)

我有一些观察者听取原子a,b,s和c1并在它们改变时打印出一些字符串.使用(print (str uid ":" @o "\n")或println版本.clojure文档说print并且println应该表现完全相同的方式,除了换行符println,但我没有看到这一点.观察者使用时,println我立刻看到了弦乐.当观察者使用时print.我只看到下一个println被调用时的输出.下面我有printlnvs 的输出print.随着print我只看到了最后的值println.

starting....
switch 1
a:1
s:1
switch …
Run Code Online (Sandbox Code Playgroud)

printing clojure

4
推荐指数
1
解决办法
2175
查看次数

标签 统计

clojure ×1

printing ×1