在aio_read中,我们在aiocb结构上使用aio_error函数来检查操作是否完成。对我来说,它似乎是轮询和读取相同,然后将EWOULDBLOCK检查为返回值。
答案 0 :(得分:2)
我们在aiocb结构上使用aio_error函数来检查操作是否已完成。
不,我们不是。我们使用它来检查是否已完成错误。
对我来说,它似乎是轮询,与读取相同,然后将EWOULDBLOCK检查为返回值。
没有。如果操作没有完成,无论是否有错误,它都会异步地继续。 EWOULDBLOCK表示已完成操作,但未传输任何数据。
你当然应该不'民意调查'使用异步I / O时:您应该只允许完成处理程序运行并让它检查结果是什么。