需要一种同步两个操作的方法

Need a way to synchronize two operations

本文关键字:两个 方法 操作 一种 同步      更新时间:2023-10-16

我有一个Connection类,它是Zmq请求/回复的一种包装器。使用此功能,我将接受来自客户端的请求并将响应发回。用于实现这些功能的两个功能是:-

void Connection::receiveMessage ()
{
//recv messages over zmq and send it to back-end.
}
void Connection::sendMessage ()
{
//This method would be called by back-end and it will send the message over Zmq.
}

面临的问题:-由于zmq请求/回复是同步操作,我必须在接收新消息之前发送回复(我将从后端获得回复以响应recvd消息)。在某些情况下,Connection类在后端对象上执行一个方法并返回。当后端准备好数据时,它将调用sendMessage。但在这里,我再次尝试在不发送先前响应的情况下接收消息。

有人能帮我确保连接在发送对以前消息的响应之前不会进入recv吗。提前谢谢。

看起来您需要实时传输。下载JRTPLIB的

C++的免费RTP库