我有一个使用 epoll(7) 的多线程 linux 程序。epoll(7) 手册页说,当它的一个 fd 被关闭时,这个 fd 将自动从 epoll 集中删除。我的问题是,如果 epoll 集的 fd 在一个线程中关闭,而 epoll 集在另一个线程中同时轮询而没有同步,该怎么办。程序会损坏还是内核会自动同步此访问?
谢谢
冯
我有一个使用 epoll(7) 的多线程 linux 程序。epoll(7) 手册页说,当它的一个 fd 被关闭时,这个 fd 将自动从 epoll 集中删除。我的问题是,如果 epoll 集的 fd 在一个线程中关闭,而 epoll 集在另一个线程中同时轮询而没有同步,该怎么办。程序会损坏还是内核会自动同步此访问?
谢谢
冯