这常常出现于在 Docker(sandbox 沙盒容器)之中运行 io_uring 服务器模式下,解决该问题需要打开容器 “特权模式”。
即;
privileged: true
启用特权容器模式: 可以通过在 Docker 容器运行时加上 --privileged 标志来启动容器。那么将容器提供类似于宿主机的权限。
docker run --privileged your-image
例如:
boost::asio、io_uring_queue_init 未处理的结构化异常,因权限及操作不支援而导致限制。
1、错误一
terminate called after throwing an instance of 'boost::wrapexcept<boost::system::system_error>'
what(): io_uring_queue_init: Function not implemented [system:38]
2、错误二
'boost::wrapexcept<boost::system::system_error>'
what(): io_uring_queue_init: Operation not permitted [system:1]
注意:Docker 打开特权模式,仍需要确保母鸡(宿主)内核大于或等于5.10.0。
boost::asio 调整 io_uring 队列大小-CSDN博客
boost::asio 启用 io_uring(Linux 5.10)队列支持-CSDN博客