ZeroMQ+QT 字符串收发

Posted 雁北

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ZeroMQ+QT 字符串收发相关的知识,希望对你有一定的参考价值。

结合 Zeromq API函数 与 Qt 字符串QString QByteArray 实现字串收发:

发送端:

1 zmq_msg_t msg;
2 QString strT = “ABC汉字123”;
3 QByteArray array = strT.toLocal8Bit();//默认utf-8编码
4 zmq_msg_init_data(&msg,array.data(),array.size(),NULL,NULL);
5 int rc = zmq_msg_send(&msg,pSock, 0);  //pSock由zmq_socket生成
6 //....
7 zmq_msg_close(&msg);

接收端:

 zmq_msg_t msg;
 zmq_msg_init(&msg);
 int rc = zmq_msg_recv(&msg,pSock,0);
 if(-1!=rc)
{
    char *ptr= (char*)(zmq_msg_data(&msg));
    QByteArray array = QByteArray::fromRawData(ptr,rc);
    QString strT = QString::fromLocal8Bit(array);
}

实现:strT= “ABC汉字123” 打包发送与接收解析。

以上是关于ZeroMQ+QT 字符串收发的主要内容,如果未能解决你的问题,请参考以下文章

带有 Qt 5.12 QSocketNotifier 的 ZeroMQ 只触发一次

QT 实用代码片段

zeromq所谓的“无锁消息队列”实现

QT TCP通信收发数据

26.Qt Quick QML-RotationAnimationPathAnimationSmoothedAnimationBehaviorPauseAnimationSequential(代码片段

ZeroMQ简单介绍