使用aio_write并同时写入

时间:2015-11-18 06:47:31

标签: c linux

考虑我调用aio_write()来异步写入大部分文件。然后程序继续执行并调用write()。 未设置标记NON_BLOCK。 write()会等到aio_write()完成吗?混合write()aio_write()

是否正确

1 个答案:

答案 0 :(得分:1)

write()不会等待aio_write()完成。但是,实际上 - 根据文件系统,计算机上的负载,IO的大小 - 您可能会看到write()aio_write()之后完成。但是不能保证首先发出的写作会先完成。

如果它们不写入相同的块,则混合aio_write()write()就可以了。如果它们重叠,您将必须处理IO首先完成的所有情况,更复杂。