我有以下情况:
该程序有一个读取器和一个写入线程到一个外部应用程序的套接字。
读者和作者需要在协调的周期中工作
编写器向套接字发送动态数量的消息(x),读者需要从套接字读取响应。每个周期的消息数超过5到10k。消息的接收顺序与发送的顺序不同,消息的布局清晰,因此可以确定单个消息。
读者需要阅读x消息,然后执行一些处理。在阅读器执行了读后处理后,作者需要重新开始发送到套接字
你的pov最快的同步是什么?
对整数使用原子事务和写入消息的数量,让编写器只更新一次整数?
我是否错过了其他任何快速同步机制?
答案 0 :(得分:3)
除非你这样做大约每秒100,000次,否则哪种机制比另一种机制快几十秒并不重要。只需使用最容易理解和/或开始工作的任何机制。然后只考虑优化机制,如果结果不够快。消息处理本身很可能比这种同步使用几个数量级的时间。