有什么方法可以检查给定文件是否没有 AIO 写入?我在我的 Unix 课程上制作了一个项目,该项目将是一个无上下文(基于 UDP)的国际象棋服务器,所有数据都必须存储在文件中。应用程序将是单进程和单线程的(AIO 功能除外)。我的问题是:
1)玩家一发送一些数据,触发 aio_write 操作到文件,然后进程继续
2)玩家二请求应该从该文件中读取的当前板状态,但如果之前的 aio_write 尚未完成,那么这个文件不是最终的,所以我应该尚未读取但等待 aio_write 结束。
问题是因为它是无上下文的,所以我没有来自 aio_write 调用的 aiocb 结构。
也可能有来自其他游戏(使用不同文件)的 aio_writes 我不需要关心,只有当特定文件当前正在写入时。