当前位置: 技术问答>linux和unix
epoll 退出
来源: 互联网 发布时间:2016-08-26
本文导语: 将监听套接字跟客户端的连接套接字都加入到epoll检测事件中,程序要退出时候,假设这时候没有任何事件情况下,怎么样才能退出epoll_wait? 如果直接杀死这个线程,好像说资源得不到释放,是这样吗,那要怎么做? ...
将监听套接字跟客户端的连接套接字都加入到epoll检测事件中,程序要退出时候,假设这时候没有任何事件情况下,怎么样才能退出epoll_wait?
如果直接杀死这个线程,好像说资源得不到释放,是这样吗,那要怎么做?
如果直接杀死这个线程,好像说资源得不到释放,是这样吗,那要怎么做?
|
至于你说的直接杀死epoll_wait所在线程会不会占用资源,本人认为应该不会
只要你手动释放该释放的资源
关于该问题有两点建议
{1}
epoll_wait本身
epoll_wait(int epfd, struct epoll_event *events,int maxevents,int timeout);
就有超时。你不会把timeout设置为-1吧
若真是这么做那就改为指定以一个正整数
同时
{2}
在一个线程函数中
while(!stop)
{
epoll_wait(.....,n);
}
中止线程是先设置stop=true 等待线程结束就ok了
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。