测试zmq是否安装成功:
zmqClient.cpp:
- #include <zmq.hpp>
- #include <string>
- #include <iostream>
- int main()
- {
- zmq::context_t context(1);
- zmq::socket_t socket(context, ZMQ_REQ);
- socket.connect("tcp://127.0.0.1:5559");
- for(int i=0; i !=10; i++)
- {
- zmq::message_t request(6);
- memcpy((void*)request.data(), "---->",5);
- socket.send(request);
- zmq::message_t reply;
- socket.recv(&reply);
- std::cout << "received Wrold";
- }
- return 0;
- }
zmqServer.cpp:
- #include <zmq.h>
- #include<iostream>
- using namespace std;
- int main()
- {
- void *context = zmq_init(1);
- void *responder = zmq_socket(context, ZMQ_REP);
- int rc = zmq_bind(responder, "tcp://*:5559");
- if(rc !=0) return 0;
- while(1)
- {
- char buffer[10];
- zmq_msg_t msg;
- zmq_msg_init(&msg);
- zmq_recv(responder, &msg, 0);
- cout << "received Hello" << endl;
- zmq_send(responder, &msg, 0);
- sleep(1);
- }
- return 0;
- }
对应得Makefile:
- zmqServer:
- g++ -o zmqServer zmqServer.cpp -lzmq
- zmqClient:
- g++ -g -o zmqClient zmqClient.cpp -lzmq -lpthread
- clean:
- rm -rf zmqServer
- rm -rf zmqClient
- rm -rf *.o
对于的目录结构:
生成文件 zmqClient ZmqServer 运行这2个文件:
ZmqServer结果:
zmqClient 结果:
可见zmq通信成功。zmq安装正确。