由于滚动阻止,GNU屏幕挂起了应用程序

时间:2018-11-29 11:34:41

标签: gnu-screen

我运行的关键应用程序在screen下有很多输出。最终它阻塞了。调查表明,原因是screenunblock scrolling一起使用Ctrl-A q或其他技巧,同时阻止了该应用程序。有什么方法可以防止屏幕阻塞应用程序,无论它输出多少?

1 个答案:

答案 0 :(得分:0)

这听起来很奇怪-对我来说,screen(在不同的主机,不同的OS版本,不同的屏幕版本等上)永远不会阻止其应用程序,无论它们输出多少。最终,当回滚缓冲区已满时,旧行将被清除,但输出将继续显示。

如果您提到ctrl-a q,或者看一下flow control settings,则可以使屏幕完全忽略XON / XOFF(ctrl-sctrl-q)... < / p>

编辑:关于您的评论,我确实相信您所描述的确实发生了。我只想指出,可能不是screen造成的,或者可能是因为它与其他事物的怪异组合。我刚在while true ; do date ; done中运行screen-导致最大程度的垃圾邮件。到目前为止,已经编写了成千上万的行,并且没有任何阻塞。这是在screen的未经修改的全新安装中进行的,默认安装是在相对较新的Debian 9.4安装中进行的。

我还尝试了您提到的命令(ssh -t user@host screen),然后执行无穷循环,这也是正确的-长时间后没有阻塞。

请注意,ssh在键盘(控制台)不活动时具有超时功能;也许那些罪魁祸首?