私はしばらくの間 zeromq を使用しており、マルチパート メッセージを広範囲に使用しています。C++ では、zmq_sendiov/zmq_recviov を使用してマルチパート メッセージを送受信します。利点は、各メッセージの「フレーム」を 1 つの iovec に入れ、一度に send/recv の呼び出しを使用できることです。
最近、nanomsg を試してみることにしました。nanomsg には、iovec も使用する nn_sendmsg/nn_sendmsg があることに気付きました。問題は、nanomsg は、受信した iovec の構造が送信されたものと同じであることを確認しますか? たとえば、私が入れたとします
msg[0].iov_base = "Hello";
msg[0].iov_len = 5;
msg[1].iov_base = "World";
msg[1].iov_len = 5;
そして送信すると、受信側は各要素に「Hello」と「World」を含む同じiovec配列を取得しますか、それともnanomsgは自由にバッファを再構築できますか?
ありがとうラルフ