epoll出现Bad file descriptor的原因
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了epoll出现Bad file descriptor的原因相关的知识,希望对你有一定的参考价值。
epoll出现Bad file descriptor的原因
错误的顺序:
close();
epoll_ctl(epollfd, EPOLL_CTL_DEL, sockfd, &ev);
正确的顺序:
epoll_ctl(epollfd, EPOLL_CTL_DEL, sockfd, &ev);
close();
在删除事件epoll_ctl(epollfd, EPOLL_CTL_DEL, sockfd, &ev);之前调用close()关闭socket描述符,就会导致删除事件时epoll_ctl()返回值小于0,并且提示Bad file descriptor。在事件删除后,再调用close()关闭对应的socket描述符就不会报错了。
以上是关于epoll出现Bad file descriptor的原因的主要内容,如果未能解决你的问题,请参考以下文章
python print 在windows上 出现 Bad file descriptor error
git 出现 error: bad signature fatal: index file corrupt
pip 出现 bad interpreter: No such file or directory
java Hello 出现以下结果:Bad command or the file name 可能是什么原因
小5聊Git安装出现错误解决方法,fatal: bad config line 10 in file xxx/.gitconfig