zeromq服务器ZMQ_REP和客户端 ZMQ_REQ

server

//  Hello World server
#include "stdafx.h"
#include <zmq.h>
#include <stdio.h>
#include <Windows.h>
#include <string.h>
#include <assert.h>

int main(void)
{
    //  Socket to talk to clients
    void *context = zmq_ctx_new();
    void *responder = zmq_socket(context, ZMQ_REP);
    int rc = zmq_bind(responder, "tcp://*:5555");
    assert(rc == 0);

    while (1)
    {
        char buffer[10];
        zmq_recv(responder, buffer, 10, 0);
        printf("Received Hello\n");
        Sleep(1);          //  Do so// zeroclient.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"

  Hello World server in C++
  Binds REP socket to tcp://*:5555
  Expects "Hello" from client, replies with "World"

//#include <zmq.hpp>
//#include <string>
//#include <iostream>
//#ifndef _WIN32
//#include <unistd.h>
//#else
//#include <windows.h>
//
//#define sleep(n)    Sleep(n)
//#endif
//
//int main() {
//    //  Prepare our context and socket
//    zmq::context_t context(1);
//    zmq::socket_t socket(context, ZMQ_REP);
//    socket.bind("tcp://*:5555");
//
//    while (true) {
//        zmq::message_t request;
//
//        //  Wait for next request from client
//        socket.recv(&request);
//        std::cout << "Received Hello" << std::endl;
//
//        //  Do some 'work'
//        sleep(1);
//
//        //  Send reply back to client
//        zmq::message_t reply(5);
//        memcpy(reply.data(), "World", 5);
//        socket.send(reply);
//    }
//    return 0;
//}
#include <zmq.h>
#include <string.h>
#include <stdio.h>
#include <windows.h>

int main(void)
{
    printf("Connecting to hello world server…\n");
    void *context = zmq_ctx_new();
    void *requester = zmq_socket(context, ZMQ_REQ);
    zmq_connect(requester, "tcp://localhost:5555");

    int request_nbr;
    for (request_nbr = 0; request_nbr != 10; request_nbr++) {
        char buffer[10];
        printf("Sending Hello %d…\n", request_nbr);
        zmq_send(requester, "Hello", 5, 0);
        zmq_recv(requester, buffer, 10, 0);
        printf("Received World %d\n", request_nbr);
    }
    zmq_close(requester);
    zmq_ctx_destroy(context);
    return 0;
}


me 'work'
        zmq_send(responder, "World", 5, 0);
    }
    return 0;

}


client


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

金士顿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值