【发布时间】:2014-08-03 18:23:17
【问题描述】:
我正在尝试使用 PGM 协议创建一个基于服务器/客户端 zeromq 的 PUB-SUB,所有这些都在我的本地计算机上。
由于某种原因,我被卡住了:
string a = clientsocket.Receive(Encoding.Unicode);
这只是为了测试,我没有得到异常,程序只是等待。
服务器代码:
var context = ZmqContext.Create();
ZmqSocket serversocket = context.CreateSocket(SocketType.PUB);
try
{
serversocket.Bind("epgm://192.168.137.127;224.0.0.1:5555");
}
catch (ZmqException)
{
throw;
}
int x = 0;
Console.WriteLine("UP");
while (x < 100)
{
serversocket.Send("hello",Encoding.Unicode);
Console.WriteLine("hello sent {0}",x.ToString());
Thread.Sleep(2000);
x++;
}
客户端代码:
context = ZmqContext.Create();
clientsocket = context.CreateSocket(SocketType.SUB);
try
{
clientsocket.Connect("epgm://192.168.137.127;224.0.0.1:5555");
}
catch (ZmqException)
{
throw;
}
clientsocket.SubscribeAll();
clientsocket.ReceiveReady += PollingItemEvens;
string a = clientsocket.Receive(Encoding.Unicode);
if (a == "hello")
{
Application.Run(_form1);
}
var poller = new Poller(new List<ZmqSocket> {clientsocket});
while (true)
{
poller.Poll();
}
编辑 [2014-08-04 1640 UTC+0000]
我在阅读文档后更改了 epgm IP。 但它并没有解决问题......
我的 IPv4 是 192.168.137.127
它是笔记本电脑上的热点降神会,它有什么不同吗?
我可以在windwos cmd 上看到'netstat' 上的epgm 吗? 因为我什么都没看到
【问题讨论】:
-
我知道这是一篇旧帖子,但我在使用 ZMQ 时遇到了同样的问题。您找到任何解决方案了吗?那是什么?