gpt4 book ai didi

c - 使用 struct epoll_event 处理内存

转载 作者:IT王子 更新时间:2023-10-29 00:03:01 26 4
gpt4 key购买 nike

我正在使用 epoll library 用 C 语言开发服务器我有一个关于如何为 struct epoll_event 处理内存的问题。我在一些在线示例中注意到,当进行 epoll_ctl 调用时,events 参数在堆栈上分配,然后传递指针,如下所示:

struct epoll_event ev;
ev.events = EPOLLIN;
epoll_ctl(epfd, EPOLL_CTL_ADD, sockfd, &ev);

现在我们都知道函数返回时 ev 会发生什么。我的问题是:epoll 库是在内部复制这些值还是依赖于您传递给堆分配的结构?上面的例子会完全破坏我的 react 器实现吗?如果是这样,跟踪我的堆分配 epoll_event 结构的最佳方法是什么?

感谢您的宝贵时间。

最佳答案

一切都很好。 epoll_ctl 函数是一个简单的系统调用包装器,当函数返回时它将完全完成。不需要来自用户空间的更多数据。该结构只是一种打包参数的方法。

关于c - 使用 struct epoll_event 处理内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12982385/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com