示例代码来解释我的问题。
发送方,将请求以格式发送到服务器(通过 ZMQ)
["sender-1", "sender-1-bdc1c14624076b691b8d9e15fbd754f1"]
..
["sender-99","sender-99-a2123d02c2989ef57da370bb13ba60e4"]
服务器在接收到来自发送方的数据后,以相同的格式将其转发回接收方。
["sender-1", "sender-1-bdc1c14624076b691b8d9e15fbd754f1"]
...
["sender-99","sender-99-a2123d02c2989ef57da370bb13ba60e4"]
接收者在收到来自服务器的请求后,只打印消息。
描述:
如果我不使用这一行mutex
中定义的(在服务器内部)。我看到接收端出现了一些不符合上述格式/标准的数据。
服务器将打印的示例(在此行)
"Sending sender-97 -- sender-97-9a284488454c8e8fd22bbbcf678895e9"
"Sending sender-98 -- sender-98-447eb5be94e7f6d949e764d7c88239ad"
但是在接收端,我看到的消息看起来像这样。
sender-97 -- sender-98
sender-98-22d9f01a8f801f559a9ff4e388813251 --
问题:
对我来说,这似乎是一个可能的线程问题(我可能错了)。其中传递给(服务器内部)赛璐珞(发送)的数据正在被其他线程更改。
我的印象是赛璐珞可以处理几乎所有的线程问题。
我对这一切的理解是否正确?