锘??xml version="1.0" encoding="utf-8" standalone="yes"?>伊人久久精品影院,91久久九九无码成人网站,MM131亚洲国产美女久久http://www.shnenglu.com/sh19871122/category/20836.htmlzh-cnSun, 16 Mar 2014 16:04:01 GMTSun, 16 Mar 2014 16:04:01 GMT60- zeromq瀛︿範錛岀涓绔?/title>http://www.shnenglu.com/sh19871122/archive/2014/03/16/206194.htmlHallelujahHallelujahSun, 16 Mar 2014 15:41:00 GMThttp://www.shnenglu.com/sh19871122/archive/2014/03/16/206194.htmlhttp://www.shnenglu.com/sh19871122/comments/206194.htmlhttp://www.shnenglu.com/sh19871122/archive/2014/03/16/206194.html#Feedback0http://www.shnenglu.com/sh19871122/comments/commentRss/206194.htmlhttp://www.shnenglu.com/sh19871122/services/trackbacks/206194.html棣栧厛zeromq鐨勮璁℃槸寮變腑闂翠漢鐨勶紙brokerless錛岀浉瀵逛簬ActiveMQ銆丷abbitMQ絳?浣跨敤0zq鐨勭▼搴忓氨鍙互鐩存帴鍜屽叾浠栫殑鑺傜偣閫氫俊鑰屼笉閫氳繃broker鐨勪唬鐞嗐傦級錛寊eromq涓嶄細瀛樺偍淇℃伅鍒扮鐩樹笂錛岀劧鑰屽彲鑳戒嬌鐢ㄦ湰鍦扮殑浜ゆ崲鏂囦歡鏉ュ瓨鍌ㄦ秷鎭紙褰撹緗簡zmq.SWAP鏃訛級銆?br />
紺轟緥錛欻elloWorld錛坰erver錛?br />

server
#include <string.h>
#include <stdio.h>
#include <unistd.h>
#include <zmq.h>
int main(int argc, char *argv[])
{
void *context = zmq_ctx_new();
void *respond = zmq_socket(context, ZMQ_REQ);
zmq_bind(respond, "tcp://*:4040");
printf("starting
\n");
for (;;)
{
zmq_msg_t request;
zmq_msg_init(&request);
zmq_msg_recv(&request, respond, 0);
printf("received: %s\n", zmq_msg_data(&request));
zmq_msg_close(&request);
sleep(1);
zmq_msg_t reply;
zmq_msg_init_size(&reply, strlen("world"));
memcpy(zmq_msg_data(&reply), "world", 5);
zmq_msg_send(&reply, respond, 0);
zmq_msg_close(&reply);
}
zmq_close(respond);
zmq_ctx_destroy(context);
return 0;
紺轟緥錛欻elloworld錛坈lient錛?br />

client
1
2 #include <stdio.h>
3 #include <unistd.h>
4 #include <string.h>
5 #include <zmq.h>
6
7 int main(int argc, char *argv[])
8 {
9 void *context = zmq_ctx_new();
10 printf("client starting
\n");
11
12 void *request = zmq_socket(context, ZMQ_REQ);
13 zmq_connect(request, "tcp://localhost:4040");
14
15 int count = 0;
16
17 for (;;)
18 {
19 zmq_msg_t req;
20 zmq_msg_init_size(&req, strlen("hello"));
21 memcpy(zmq_msg_data(&req), "hello", 5);
22 printf("send msg hello, count = %d\n", count);
23 zmq_msg_send(&req, request, 0);
24 zmq_msg_close(&req);
25
26 zmq_msg_t reply;
27 zmq_msg_init(&reply);
28 zmq_msg_recv(&reply, request, 0);
29 printf("recv msg %s, count = %d\n", zmq_msg_data(&reply), count);
30 zmq_msg_close(&reply);
31 count++;
32 }
33
34 zmq_close(request);
35 zmq_ctx_destroy(context);
36
37 return 0;
38 }
39
40
榪欓噷浣跨敤浜嗘渶鍩烘湰鐨勮姹傚簲絳旀灦鏋勩傝緇嗚В鏋愪唬鐮侊細
絎竴姝ワ細鍒涘緩浜哻ontext鍜宻ocket錛寊mq_ctx_new鏂規硶鍒涘緩浜嗕竴涓柊鐨?span style="color: red;">context錛岃繖鏄嚎紼嬪畨鍏?/span>鐨勶紝鍗充竴涓猚ontext鍙敤浜庡涓嚎紼嬫搷浣溿?zmq_socket鏂規硶鍒涘緩浜嗕竴涓湪context涓畾涔夌殑socket錛?span style="color: red;">ZeroMQ鐨剆ocket涓嶆槸綰跨▼瀹夊叏銆備紶緇熺殑socket鏄悓姝ョ殑錛岀劧鑰孼MQ鐨剆ocket鍦ㄥ鎴風鍜屾湇鍔$閮界淮鎶や簡涓涓槦鍒楁潵綆$悊request-reply鐨勫紓姝ユā寮忋俍MQ鑷姩鐨勫鐞嗚繛鎺ャ侀噸榪炪佹柇寮榪炴帴鍜屽唴瀹逛氦浠樸?br />鏈嶅姟绔垱寤轟簡Reply錛圸MQ_REP錛夌敤鏉ュ鐞嗘帴鏀舵秷鎭茍搴旂瓟娑堟伅銆傚鏋滃鎴風鍜屾湇鍔$閬楀け錛坙ost錛夛紝搴旂瓟鐨勬秷鎭皢鍦ㄦ病鏈変換浣曢氱煡鐨勬儏鍐典笅涓㈡帀銆?br />瀹㈡埛绔垱寤轟簡涓涓猂equest(ZMQ_REQ)鏉ュ彂閫佹秷鎭茍鎺ユ敹鏉ヨ嚜鏈嶅姟鐨勫簲絳斻俍MQ_REQ涓嬩笉浼氫涪寮冧換浣曚俊鎭紝涓嶇鏄病鏈夋病鏈夊彲鐢ㄤ笌鍙戦佹秷鎭殑鏈嶅姟鎴栨槸鏈嶅姟澶勪簬蹇欑姸鎬侊紝鎵鏈夌殑鍙戦佹搷浣渮mq_send鍑芥暟浼氶樆濉烇紝鐩村埌涓涓湇鍔″彉涓哄彲鐢ㄤ簬鍙戦佹秷鎭俍MQ_REQ鍜孼MQ_REP銆乑MQ_ROUTER綾誨瀷鍏煎銆?br />娑堟伅鐨勫彂閫亃mq_send鍑芥暟鐨勭涓変釜鍙傛暟鏄痜lags錛屾槸ZMQ_DONTWAIT鎴朲MQ_SNDMORE銆俍MQ_DONTWAIT琛ㄦ槑娑堟伅鏄紓姝ョ殑鍙戦併俍MQ_SNDMORE琛ㄦ槑娑堟伅鏈夊閮ㄥ垎錛屽叾浣欑殑閮ㄥ垎宸茬粡“鍦ㄨ礬涓婁簡”銆傛秷鎭帴鏀跺嚱鏁皕mq_msg_recv鍑芥暟錛屽鏈嶅姟绔紝鍦ㄥ厛鍓嶆帴鏀剁殑娑堟伅鏄棤鏁堢殑銆傜涓変釜鍙傛暟flugs鍙兘鏄痁MQ_DONTWAIT銆?br />
鍏堢潯瑙変簡
]]>
欧美久久久久久午夜精品|
久久成人精品视频|
久久综合一区二区无码|
伊人久久五月天|
久久国产亚洲高清观看|
久久精品无码一区二区三区日韩|
久久久久人妻一区精品|
久久精品国产亚洲av麻豆色欲|
亚洲天堂久久精品|
波多野结衣AV无码久久一区|
久久精品亚洲精品国产色婷|
久久九九久精品国产|
国产国产成人精品久久|
久久人人爽人人人人片av|
久久综合狠狠综合久久激情 |
久久免费看黄a级毛片|
色综合久久综精品|
久久婷婷五月综合国产尤物app|
久久亚洲综合色一区二区三区|
久久久久亚洲AV成人网人人网站|
国产AV影片久久久久久|
久久精品国产精品青草|
性高湖久久久久久久久|
久久久久久综合网天天|
伊人精品久久久久7777|
久久久久国产精品麻豆AR影院|
69久久精品无码一区二区|
久久午夜羞羞影院免费观看|
久久久久久免费视频|
噜噜噜色噜噜噜久久|
亚洲伊人久久成综合人影院
|
激情久久久久久久久久|
久久99精品久久久久子伦|
久久久久亚洲AV无码专区体验|
一本一本久久a久久综合精品蜜桃|
亚洲国产婷婷香蕉久久久久久|
欧美午夜精品久久久久久浪潮|
久久夜色撩人精品国产小说|
久久久久无码精品|
色天使久久综合网天天
|
久久成人18免费网站|