2013-03-23 66 views

回答

3

,内核在进程的请求的I/O请求。这个过程会执行其他的事情。由于I/O通常比内存操作慢得多,这意味着在读取完成之前,进程可以完成很多工作。在I/O异步完成,这意味着过程中不堵塞,不坐在那里什么都不做,而I/O子系统转到磁盘并返回数据。

的比喻是:你问一个朋友,让你一杯水,当你吃。当朋友得到水时,你继续吃东西。当朋友回来后,你喝水。那是异步交付一杯水。同步意味着你坐在桌旁无所事事,无法做任何事情,而是要等待水

玻璃
0

根据我的理解,该任务由调用aio_read的进程执行。结果应在原始调用中提供的返回缓冲区中排队。这意味着,取决于流程及插座它试图读取你的输出将是即使同时运行不同的,因为他们将不得不存储在不同的缓冲器。

希望这是有益的。有关更多信息,我想看看IBM的来源我下面贴

Asynchronous I/O is currently only supported for sockets. The aio_offset field may be set but it will be ignored. 

IBM Source