2017-03-02 3 views
1

Wie drucken Sie Ihre Ausgabe in REPL, während das Skript noch läuft? Ich habe bemerkt, dass es alles speichert, um zu puffern, und dann druckt, sobald es den Code vervollständigt.Clojure-Druck, während das Skript noch zur REPL läuft

(defn -main 
    [x] 
    (when (pos? x) 
    (println x) 
    (Thread/sleep 10000) 
    (recur (dec x)))) 
(-main 10) 
+4

Ich glaube, Sie müssen [ 'flush'] (https://clojuredocs.org/clojure.core/flush) . –

Antwort

0

Java (& somit Clojure), verwenden Ausgang gepuffert. Wenn Sie in der Mitte einer engen Schleife versuchen, zu drucken, müssen Sie die flush:

(println x) 
(flush) 
+0

Danke, das war richtig, ich hatte das vorher schon benutzt, aber ich habe versucht, die Datei in die REPL zu laden und die Ausgänge nicht in Echtzeit ausgespuckt. – Stixxxx

Verwandte Themen