IO
文章平均质量分 88
Yanní_G
这个作者很懒,什么都没留下…
展开
-
IO 线程图解 & Netty框架
请看前文 select poll epoll 超详解释1 Selector上文说到了从BIO到多路复用器的演变路程和各个多路复用器的工作流程,还介绍了epoll的边缘触发和水平触发的问题。如下是Java NIO包下的方法调用对应系统调用的详细对比,请看如下Java代码和注释。public class Test { private ServerSocketChannel server = null; private Selector selector = null; int p原创 2021-01-24 20:29:08 · 437 阅读 · 4 评论 -
select、poll、epoll - IO模型超详解
Linux操作系统有关IO的知识铺垫1. PagecacheLinux内核所使用的的主要磁盘高速缓存。内核读写磁盘的时候都要用到这个PageCache。如果程序想要读的部分不在高速缓存,则先申请一个4KB大小的新页框加到PageCache,然后再用磁盘读到的数据填充。写操作的时候,先把要写的数据写到pageCache,标记当前页面为脏,然后要么程序自己调用系统调用刷盘,要么就等着内核到了自己的默认设置去给你刷回去。如果没有及时写出现了断电,那么你就白写了。2. 文件描述符创建文件描述符,文件描述原创 2021-01-24 20:17:36 · 10486 阅读 · 34 评论