#include <QtCore>
#include <zmq.h>
int main(int argc, char *argv[])
{
QCoreApplication app(argc, argv);
// 初始化 ZeroMQ 上下文
void *context = zmq_ctx_new();
// 创建 PUB(发布者)套接字
void *publisher = zmq_socket(context, ZMQ_PUB);
// 绑定套接字到特定地址
const char *address = "tcp://*:5555";
zmq_bind(publisher, address);
// 发布消息
int messageId = 0;
while (true) {
QString message = QString("Message #%1").arg(messageId);
// 发送消息
zmq_send(publisher, message.toUtf8().constData(), message.size(), 0);
qDebug() << "Published:" << message;
QThread::sleep(1); // 发布间隔为1秒
++messageId;
}
// 关闭套接字
zmq_close(publisher);
// 销毁 ZeroMQ 上下文
zmq_ctx_destroy(context);
return app.exec();
}