网络I / O并不是AIO的优先事项,因为编写POSIX网络服务器的每个人都使用基于事件的非阻塞方法。旧式的Java“数十亿个阻塞线程”方法令人毛骨悚然。
磁盘写I / O已经被缓冲,可以使用posix_fadvise之类的功能将磁盘读I / O预取到缓冲区中。这将直接的,无缓冲的磁盘I /
O留作AIO的唯一有用目的。
直接,无缓冲的I / O仅对事务数据库真正有用,并且那些数据库倾向于编写自己的线程或进程来管理其磁盘I / O。
因此,最后使POSIX AIO失去了 任何 有用的作用。不要使用它。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)