我最近使用 epoll 编写了一个简单的 TCP 服务器,但我想探索高性能多路复用的其他机制,为此我遇到了 io_uring,并计划使用它制作另一个简单的 TCP 服务器。
但是我读到这里https://kernel.dk/io_uring.pdf中 io_uring 的条目数限制为 4096 ,这似乎意味着理论上我将无法拥有超过该数量的持久连接。
据我了解,通常我会使用诸如epoll_wait()
等待 epoll 事件之类的东西,而是在 io_uring 中提交特定请求,并在请求完成/失败时收到通知,这是否意味着我最多可以提交 4096 读取( ) 请求例如?
我误解了 io_uring 的用例还是误解了如何使用它?