作者OfficeGL (妤欣)
看板C_and_CPP
標題[問題] zeromq 可以multithread多重訂閱嗎~
時間Tue Oct 15 21:50:00 2019
windos 10
vs 2017
因為會用到 IPC 目前的機制是透過 0mq 訂閱及發佈
C 程式會動態產生多個 thread 1~10
每個 thread 分別訂閱 兩個主題
但是我發現訂閱端會收不到東西
void *context = zmq_ctx_new ();
void *subscriber = zmq_socket (context, ZMQ_SUB);
int rc = zmq_connect (subscriber, "tcp://localhost:5556");
assert (rc == 0);
char *filter0 = "0000";
char *filter1 = "1111";
rc = zmq_setsockopt (subscriber, ZMQ_SUBSCRIBE,
filter0, strlen (filter0));
assert (rc == 0)
rc = zmq_setsockopt (subscriber, ZMQ_SUBSCRIBE,
filter1, strlen (filter1));
assert (rc == 0)
但是在收的時候都會收不到東西
如果把 filter0 註解掉反而可以收到 1111 主題的東西
請問為什麼會這樣@@ 有人使用過嗎
難道 zmq 不能一個 thread 訂閱多個主題嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.137.35.37 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1571147402.A.B1D.html