1
我製作了一個簡單的C++程序來開始使用0MQ。我有兩個應用程序:一個服務器(具有綁定發行商插座)和一個客戶端(具有連接訂戶)套接字。服務器程序被從一臺遠程機器上拉出並運行 - 我們稱它爲example.com。ZMQ在發佈服務器套接字上生成EAGAIN
ZMQ生產EAGAIN當服務器發送一個簡單的字符串消息與沒有標誌。我通過查看我正在使用的ZMQ CPP綁定知道這一點;只有在引發此錯誤時,socket_t :: send()函數才返回false。我沒有使用返回一個整數的函數,我確定返回值是boolean false。
當客戶端正在運行並連接時,該功能仍然存在。機器打開所有輸入和輸出端口。
爲什麼ZMQ會產生這個錯誤?尤其是,EAGAIN只能在非阻塞模式下提出,但我特別不會要求這種模式。這是發佈者套接字的功能嗎?