C Libevent:如何在关机时关闭所有打开的套接字?

C Libevent:如何在关机时关闭所有打开的套接字?,c,libevent,C,Libevent,我使用libevent创建了一个简单的HTTP代理。它可以通过发送信号处理器捕获的SIGHUP信号来关闭。shutdown函数调用event\u base\u loopexit,释放结构和其他堆分配和出口 问题是当连接打开时,如果捕获到SIGHUP。我需要能够关闭套接字,理想情况下调用与捕获关闭事件时调用的关闭函数相同的关闭函数 有没有一种正确或标准的方法可以做到这一点 目前,我唯一能想到的就是保存一个连接的链表,并在关机时简单地迭代,依次关闭每个连接 目前,我唯一能想到的就是保存一个连接的链接

我使用libevent创建了一个简单的HTTP代理。它可以通过发送信号处理器捕获的
SIGHUP
信号来关闭。shutdown函数调用
event\u base\u loopexit
,释放结构和其他堆分配和出口

问题是当连接打开时,如果捕获到
SIGHUP
。我需要能够关闭套接字,理想情况下调用与捕获关闭事件时调用的关闭函数相同的关闭函数

有没有一种正确或标准的方法可以做到这一点

目前,我唯一能想到的就是保存一个连接的链表,并在关机时简单地迭代,依次关闭每个连接

目前,我唯一能想到的就是保存一个连接的链接列表,然后在关机时简单地>迭代,依次关闭每个连接

这就是你必须做的

(请注意,应用程序退出时套接字是关闭的。但是,如果您需要在关闭时对所有连接执行自定义逻辑,则需要跟踪它们并遍历它们。)