GNU 屏幕是否发出信号 28?

GNU 屏幕是否发出信号 28?

有点远...

我正在执行一个需要几个小时的长时间运行的过程。该过程是重新索引 CDDB 数据库的模糊匹配文件。虽然时间长度是可变的,但一段时间后该过程就会退出:

# /usr/local/bin/cddbd -fdv
Generating the fuzzy matching hash file.
Scanning /home/freedb/cddb/soundtrack.
Scanning /home/freedb/cddb/lost+found.
Scanning /home/freedb/cddb/jazz.
Scanning /home/freedb/cddb/data.
Scanning /home/freedb/cddb/rock.
Scanning /home/freedb/cddb/reggae.
Scanning /home/freedb/cddb/newage.
Scanning /home/freedb/cddb/folk.
Scanning /home/freedb/cddb/misc.
Received signal 28.
Quitting, status 1.

输出来自 CDDB 进程。我以前从未见过信号 28,经过一番研究,有两种可能性:“窗口大小变化”(尽管这似乎仅适用于 BSD 或 Sun Unix)或“虚拟闹钟”(仅适用于 BSD)。我在 Ubuntu 中运行它...

因此我想知道,忽略我不应该在 Linux 上得到这些事实,屏幕是否会发出“窗口大小改变”信号?

正如我所说,这有点不太可能!

答案1

快速阅读源代码显示,当您连接到会话时,screen它会发送,以告诉程序它们应该重新检查终端的宽度×高度。这是SIGWINCHattacher.c

SIGWINCH 具有总是存在于 Linux 上 –信号(7)只是说“4.3BSD,Sun”,因为那时信号引入,作为伪tty支持的一部分。

相关内容