基于System V消息队列的I/O多路复用方法 |
| |
引用本文: | 段锴,李永进,郝鹏,王波.基于System V消息队列的I/O多路复用方法[J].数字技术与应用,2023(10):40-42. |
| |
作者姓名: | 段锴 李永进 郝鹏 王波 |
| |
作者单位: | 中国民航信息网络股份有限公司 |
| |
摘 要: | <正>传统上通过采用select或poll等系统调用可以实现多个TCP网络连接的I/O复用,但该方式并不支持基于SystemV消息队列的报文传输。有名管道技术FIFO的描述符与Socket的描述符相类似,可以被select系统调用支持,因此可借助FIFO设计一种方法,达到对System V消息队列进行I/O复用的目的。方法中设计地从消息队列接收报文的处理流程,在不降低处理性能的前提下,有效解决了有名管道和消息队列的操作不是原子操作带来的不一致问题,实现单一网络通信线程可以同时处理来自网络连接和System V消息队列的报文。
|
|
|