投稿前需要在CrossCheck database上查重么
发布网友
发布时间:2022-05-04 23:25
我来回答
共2个回答
热心网友
时间:2022-06-27 03:54
程序一中对标准输入的监听使用ET模式,结果实现了我们想要的功能。那么实际原理是如何呢,我们将过程分析一下:
(1) 当用户输入一组字符,这组字符被送入buffer,字符停留在buffer中,又因为buffer由空变为不空,所以ET返回读就绪,输出”hello world!”。
(2) 之后程序再次执行epoll_wait,此时虽然buffer中有内容可读,但是根据我们上节的分析,ET并不返回就绪,导致epoll_wait阻塞。(底层原因是ET下就绪fd的epitem只被放入rdlist一次)。
(3) 用户再次输入一组字符,导致buffer中的内容增多,根据我们上节的分析这将导致fd状态的改变,是对应的epitem再次加入rdlist,从而使epoll_wait返回读就绪,再次输出“hello world!”。
我们在看看LT的情况如何,将程序一以下修改:
ev.events=EPOLLIN;//默认使用LT模式
热心网友
时间:2022-06-27 03:55
一般是需要在知网上查