读QNX_Neurino_RTOS_System_Architecture 的Interprocess Communcation章的Events节。
QNX Neutrino提供了event处理的子集。POSIX和他的实时拓展接口提供了许多异步处理方法。对于QNX的内核而言额外地提供了一些如pulses的通知技术。QNX将event机制封装为一个子集,从一定意义上来讲,实现了应用程序与各种通知技术的解耦。举例来讲,应用程序不关注底层的通知技术究竟是POSIX实时信号队列还是UNIX信号队列。
一个正在执行的线程可能遇到三种事件源:
- 其他线程调用的MsgDeliverEvent(软)
- 中断处理(硬)
- 计时器到时(硬)
通过ionotify函数可以实现Client的异步传输,即当读取文件时,客户端请求文件数据等耗时的操作时,不需要干等,而是可以异步地继续执行其他的操作。(此处有疑惑,下一节调用SignalWaitInfo等待阻塞的特殊信号,需要同步,貌似不支持这种异步操作)。
来源:CSDN
作者:玛丽奥ZJY
链接:https://blog.csdn.net/zjy900507/article/details/77084708