我使用libevent创建了一个简单的HTTP代理。可以通过发送由信号处理程序捕获的SIGHUP
信号来关闭它。关闭功能调用event_base_loopexit
,释放结构和其他堆的分配和退出。
问题是在连接打开时是否捕获了SIGHUP
。我需要能够关闭套接字,理想情况下调用捕获关闭事件时所谓的相同关闭功能。
是否有正确或标准的方法可以这样做?
目前,我唯一能想到的是保留一个链接的连接列表,并在关闭时通过此链接进行迭代,依次关闭。
目前,我唯一能想到的是保留一个链接的连接列表,简单地>遍历关闭时,依次关闭。
这就是您要做的。
(请注意,当应用程序退出时,插座是关闭的。但是,如果您需要对关闭时的所有连接进行自定义逻辑,则需要跟踪它们并通过它们进行迭代。)