×

异步io

Linux中异步IO模型有哪些?Java:关于同步IO与异步IO

admin admin 发表于2022-05-07 16:05:11 浏览126 评论0

抢沙发发表评论

Linux中异步IO模型有哪些

1)阻塞I/O(blocking I/O)2)非阻塞I/O (nonblocking I/O)3) I/O复用(select 和poll) (I/O multiplexing)4)信号驱动I/O (signal driven I/O (SIGIO))5)异步I/O (asynchronous I/O (the POSIX aio_functions))其中前4种都是同步,最后一种才是异步。

Java:关于同步IO与异步IO

由操作系统完成的io同步,最常见的就是文件流了.当你对文件a创建一个写入的文件流后未关闭,此时再对a创建另一个新的写入的文件流就会抛出异常.这就属于操作系统完成的io同步,因为操作系统不允许一个文件同时出现两个或以上的文件流.itjob网上有相关例子

异步IO的介绍

异步IO的概念和同步IO相对。当一个异步过程调用发出后,调用者不能立刻得到结果。实际处理这个调用的部件在完成后,通过状态、通知和回调来通知调用者。在一个CPU密集型的应用中,有一些需要处理的数据可能放在磁盘上。预先知道这些数 据的位置,所以预先发起异步IO读请求。等到真正需要用到这些数据的时候,再等待异步IO完成。使用了异步IO,在发起IO请求到实际使用数据这段时间 内,程序还可以继续做其他事情