如何强制Python的打印功能输出到屏幕?
这不是禁用输出缓冲的重复- 链接的问题是尝试无缓冲输出,而这是更一般的.这个问题的最佳答案太强大或涉及到这个问题(他们不是很好的答案),这个问题可以在谷歌上找到一个相对新手.
printf
除非换行符在格式字符串中,为什么在调用后不刷新?这是POSIX的行为吗?我怎么可能printf
每次都立即冲洗?
关于(1)我不确定.
至于(2),我相信Python在每一行之后都会刷新到stdout.但是,如果你将stdout重载为一个文件,它是否经常刷新?
令我彻底混淆的一件事是使用session.Flush
,和session.Commit
,和session.Close
.
有时session.Close
工作,例如,它提交我需要的所有更改.我知道我需要在有事务时使用提交,或者需要在具有多个创建/更新/删除的工作单元中使用提交,以便我可以选择在发生错误时回滚.
但有时我真的被后面的逻辑所困扰session.Flush
.我已经看到了一些示例,其中有一个session.SaveOrUpdate()
后续的同花顺,但是当我删除Flush时它无论如何都能正常工作.有时我在Flush语句中遇到错误,说会话超时,并删除它确保我没有遇到该错误.
有没有人有关于何时何地使用同花顺的良好指导方针?我已经检查了NHibernate文档,但我仍然找不到简单的答案.
在Java中,flush()
方法用于流中.但我不明白使用这种方法的目的是什么?
fin.flush();
Run Code Online (Sandbox Code Playgroud)
告诉我一些建议.
我正在学习C++,我找到了一些我无法理解的东西:
可以显式刷新输出缓冲区以强制写入缓冲区.默认情况下,读取
cin
刷新cout
;cout
程序正常结束时也会刷新.
因此刷新缓冲区(例如输出缓冲区):这是通过删除缓冲区中的所有内容来清除缓冲区还是通过输出缓冲区中的所有内容来清除缓冲区?或者冲洗缓冲区意味着完全不同的东西?
我ob_flush()
和flush()
两个人之间有什么区别?
该ob_flush()
参考说:
此函数将发送输出缓冲区的内容(如果有).
该flush()
参考说:
刷新PHP的写缓冲区以及PHP正在使用的任何后端(CGI,Web服务器等).
但是,它继续说:
[它]可能无法覆盖您的Web服务器的缓冲方案......
所以,在我看来,我可以只使用ob_flush()
所有的时间.但是,当我这样做时,我得到了奇怪的结果.有人可以用简单的语言解释这里发生了什么吗?
我有一个小脚本,crontab每天使用以下命令调用它:
/homedir/MyScript &> some_log.log
Run Code Online (Sandbox Code Playgroud)
此方法的问题是some_log.log仅在MyScript完成后创建.我希望在程序运行时将程序的输出刷新到文件中,这样我就能做到这样的事情
tail -f some_log.log
Run Code Online (Sandbox Code Playgroud)
并跟踪进度等
我正在使用log4net和AdoNetAppender.似乎AdoNetAppender有一个Flush方法.无论如何我可以从我的代码中调用它吗?
我正在尝试创建一个管理页面来查看数据库日志中的所有条目,我想用bufferSize = 100(或更多)设置log4net,然后我希望管理员能够单击管理员上的按钮页面强制log4net将缓冲的日志条目写入数据库(不关闭log4net).
那可能吗?
我有一个PHP脚本,只生成日志到客户端.
当我回应某些内容时,我希望它能够即时转移到客户端.
(因为在脚本处理过程中,页面是空白的)
,我已经打得四处ob_start()
和ob_flush()
,但他们没有工作.
什么是最好的解决方案?
PS:在echo
通话结束时放一个同花牌有点脏......
编辑:Answers既不工作,PHP或Apache错误?