2017-07-04 4 views
1

私は長時間実行されるシミュレーションを実行し、定期的に更新を印刷したいと考えています。しかし、flushを明示的に試しても、print文がバッファされていることがわかりました。ここでは、例えば:Rでプリントバッファをフラッシュするには?

for (i in 1:10) 
{ 
    print(i) 
    flush(stdout()) 
    Sys.sleep(1) 
} 

これは1秒ごとに増加すると予想しますが、10秒後にはすべてを出力します。

プリントバッファを強制的にフラッシュしますか?

+0

は '猫(STDOUT()、9月= '\ n' は)' – Andrelrms

答えて

2

私は通常、このようにそれを行う:

for (i in 1:10) { 
    message(i,"\r",appendLF=FALSE) 
    flush.console() 
    Sys.sleep(1) 
} 
+0

感謝を使用してみてください! 'flush.console()'がここの鍵でした! –