private void ListenerWork() { AsyncIO.ForceDotNet.Force(); using (var server = new ResponseSocket()) { server.Bind("tcp://*:12345"); while (!_listenerCancelled) { Connected = _contactWatch.ElapsedMilliseconds < ContactThreshold; string message = "blah"; bool success = false; if (sending) { success = OutgoingSocketExtensions.TrySendFrame(server, message); } else { success = server.TryReceiveFrameString(out message); } if (success) { sending = !sending; _contactWatch.Restart(); } } } NetMQConfig.Cleanup(); }
private void ListenerWork() { AsyncIO.ForceDotNet.Force(); using (var subSocket = new RequestSocket()) { subSocket.Options.ReceiveHighWatermark = 1000; subSocket.Connect("tcp://localhost:12345"); // subSocket.Subscribe(""); while (!_listenerCancelled) { string frameString = "blah"; bool success = false; if (!sending) { success = subSocket.TryReceiveFrameString(out frameString); if (success) { _messageQueue.Enqueue(frameString); } } else { success = OutgoingSocketExtensions.TrySendFrame(subSocket, frameString); } // if the transaction was successful, if (success) { sending = !sending; } } subSocket.Close(); } NetMQConfig.Cleanup(); }