我想关闭一个套接字,但在通知accept/connect
上的所有线程阻塞之前,因此我发送一个用户特定的信号,但不知道信号接收线程的tid。我不能使用系统调用kill(pid, signal)
答案 0 :(得分:2)
为什么不在没有通知的情况下关闭套接字?接受或从该套接字读取时阻塞的每个线程将返回相应的错误,您可以解析该错误以采取必要的操作
答案 1 :(得分:0)
是的。您可以通过系统调用向所有正在运行的线程发送信号:kill()。 像这样使用它: 杀死(0,signal_id) 这里'0'表示所有过程的广播信号。对广播信号进行注册的进程'执行其信号处理程序以进行进一步操作。