【发布时间】:2022-08-29 13:58:00
【问题描述】:
在多进程程序中访问队列时,应该读取mq_receive 和写入mq_send 受信号量保护,或者是否已经内置了任何类型的保护
-
线程之间的共享资源需要同步以实现数据完整性和一致性。
-
@SparKot消息队列的想法,它们本质上实现了进程间同步。
-
是否已经内置了任何类型的保护- 就在这里。这正是拥有消息队列的想法。
在多进程程序中访问队列时,应该读取mq_receive 和写入mq_send 受信号量保护,或者是否已经内置了任何类型的保护
始终建议阅读您正在使用的 API 的正式文档。
专门针对 mq_receive 和 mq_send 这些是:
在里面属性部分你可以看到这两个函数都是线程安全,这意味着您可以从多个线程访问它们而无需额外的保护。
【讨论】: