io_uring 的一点疑问

2022-10-04 17:05:54 +08:00
 dreamlike
我现在刚开始使用 liburing 做 aio
请各位大佬指正
如果我 submit 一个对 socket 的读取的 sqe 是不是我需要保证我传入的 buffer 对应的内存至少要在对应 cqe 返回前有效(io_uring_prep_recv)
如果对端一直都不发送消息 是不是我这块内存就算浪费掉了 感觉要是支持很多连接就会浪费很多内存

另外一个问题是 io_uring 支持注册 eventfd 进去 我是不是可以网络 io 走 epoll ,文件 io 走 io_uring ,通过 epoll 监听 eventfd 触发收割 cqe ,也能解决上面那个问题
1142 次点击
所在节点    问与答
1 条回复
majula
2022-10-04 17:49:14 +08:00
一般实践上是用 automatic buffers

参考这篇文章: https://lwn.net/Articles/813311/

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/884633

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX