问题标签 [epollet]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
39 浏览

c - 使用EPOLLET时无法一次性读取数据怎么办?

我是网络编程的新手。假设我们已经注册了一个用于 epoll 的套接字EPOLLIN|EPOLLET。我们知道我们应该在调用通知时从该套接字读取所有数据epoll_wait。我们通常read(fd, buffer, buf_size)在循环中调用并将数据读入缓冲区,直到我们得到EAGAINor EWOULDBLOCK

但是如果由于缓冲区大小不足而无法读取此循环中的所有数据该怎么办?是否有缓冲区大小的推荐值可以确保它足以存储所有数据,或者我们只是将其视为要处理的错误?