0
我有一個類連接是一種Zmq Request/Reply上的包裝。使用這個我會接受來自客戶端的請求並將回覆發送回去。用於實現這兩個功能是: -需要一種方法來同步兩個操作
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,直到它發送迴應以前的消息。 在此先感謝。