gpt4 book ai didi

c - shell在即将关闭时发出什么信号

转载 作者:太空宇宙 更新时间:2023-11-04 04:49:34 25 4
gpt4 key购买 nike

我正在 unix 下用 c 语言构建聊天。我有一个服务器端和一个客户端。一切都很好,除非客户端关闭 shell 窗口。在那种情况下,客户端没有告诉服务器他要去,服务器认为他仍然登录。

我想在客户端通过按下 X 按钮关闭终端时处理信号。我的进程得到什么信号?我尝试处理 SIGHUP、SIGQUIT 和 SIGTERM,但它们似乎不起作用。

最佳答案

当客户端按 X 关闭终端并在服务器应用程序中捕获相同信号时,您可以发送用户定义的信号 SIGUSR1 或 SIGUSR2 之一。为此,您需要获取有关终端的信息,服务器从需要维护的开放终端列表中接收信号终端。

关于这些信号的更多描述可以在信号的手册页或here中找到

 Signal     Value     Action   Comment
---------------------------------------------------
SIGUSR1 30,10,16 Term User-defined signal 1
SIGUSR2 31,12,17 Term User-defined signal 2
SIGTSTP 18,20,24 Stop Stop typed at tty

关于c - shell在即将关闭时发出什么信号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17123379/

25 4 0