我正在使用内核级异步 I/O(即libaio.h)。在提交struct iocb使用之前,io_submit我使用io_set_callback将函数指针插入iocb->data. io_getevents最后,我使用并运行每个回调来获取已完成的事件。
我希望能够在回调中使用一些上下文信息(例如提交时间戳)。我能想到的唯一方法是继续使用io_getevents,但要iocb->data指向一个带有上下文和回调的结构。
有没有其他方法可以做这样的事情,并且iocb->data保证在使用时不会受到影响io_getevents?我的理解是,还有另一种方法可以自动运行回调,如果不指向函数libaio,这将是一个问题。iocb->data
这里的任何澄清都会很好。上的文档libaio似乎真的很缺乏。