今度こそZeroMQ C++ bindingからpubする
http://d.hatena.ne.jp/shokai/20100811/1281492751 のC++ binding版
Cの関数のラッパーなので先にCで試してからだったら照らし合わせて(http://api.zeromq.org/zmq_cpp.html)理解が早かった
pub.cpp
#include <stdio.h> #include <iostream> #include <string> #include <zmq.hpp> #include <boost/format.hpp> using namespace std; using namespace boost; int main(int argc, char **argv){ cout << "pub start" << endl; zmq::context_t ctx(1); zmq::socket_t sock(ctx, ZMQ_PUB); sock.bind("tcp://127.0.0.1:5000"); int count = 0; for(;;){ try{ string m = str(format("count %d") % count); cout << m << endl; zmq::message_t msg(m.size()+1); memcpy(msg.data(), m.c_str(), m.size()+1); sock.send(msg); count++; sleep(1); } catch (std::exception &e) { cerr << e.what() << endl; } } }