本文整理匯總了C#中NetMQ.Sockets.DealerSocket.TrySendFrame方法的典型用法代碼示例。如果您正苦於以下問題:C# DealerSocket.TrySendFrame方法的具體用法?C# DealerSocket.TrySendFrame怎麽用?C# DealerSocket.TrySendFrame使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類NetMQ.Sockets.DealerSocket
的用法示例。
在下文中一共展示了DealerSocket.TrySendFrame方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。
示例1: CheckTrySendFails
public void CheckTrySendFails()
{
using (var dealer = new DealerSocket())
{
dealer.Options.SendHighWatermark = 1;
dealer.Options.Linger = TimeSpan.Zero;
dealer.Connect("tcp://127.0.0.1:55555");
Thread.Sleep(100);
var success = dealer.TrySendFrame("1");
Assert.IsTrue(success); // because the SendHighWatermark allows it into the buffers
success = dealer.TrySendFrame("2");
Assert.IsFalse(success);
}
}
示例2: CheckSendTryAgain
public void CheckSendTryAgain()
{
using (var router = new RouterSocket())
using (var dealer = new DealerSocket())
{
var port = router.BindRandomPort("tcp://127.0.0.1");
router.Options.Linger = TimeSpan.Zero;
dealer.Options.SendHighWatermark = 1;
dealer.Options.Linger = TimeSpan.Zero;
dealer.Connect("tcp://127.0.0.1:" + port);
Thread.Sleep(100);
Assert.IsTrue(dealer.TrySendFrame("1"));
Assert.IsFalse(dealer.TrySendFrame("2"));
}
}
示例3: Unbind
public void Unbind(string protocol)
{
using (var server = new DealerSocket())
{
string address1, address2;
// just making sure can bind on both addresses
using (var client1 = new DealerSocket())
using (var client2 = new DealerSocket())
{
if (protocol == "tcp")
{
var port1 = server.BindRandomPort("tcp://localhost");
var port2 = server.BindRandomPort("tcp://localhost");
address1 = "tcp://localhost:" + port1;
address2 = "tcp://localhost:" + port2;
client1.Connect(address1);
client2.Connect(address2);
}
else
{
Debug.Assert(protocol == "inproc");
address1 = "inproc://localhost1";
address2 = "inproc://localhost2";
server.Bind(address1);
server.Bind(address2);
client1.Connect(address1);
client2.Connect(address2);
}
Thread.Sleep(100);
// we should be connected to both server
client1.SendFrame("1");
client2.SendFrame("2");
// the server receive from both
server.SkipFrame();
server.SkipFrame();
}
// unbind second address
server.Unbind(address2);
Thread.Sleep(100);
using (var client1 = new DealerSocket())
using (var client2 = new DealerSocket())
{
client1.Options.DelayAttachOnConnect = true;
client1.Connect(address1);
client2.Options.DelayAttachOnConnect = true;
if (protocol == "tcp")
{
client2.Connect(address2);
client1.SendFrame("1");
server.SkipFrame();
Assert.IsFalse(client2.TrySendFrame(TimeSpan.FromSeconds(2), "2"));
}
else
{
Assert.Throws<EndpointNotFoundException>(() => { client2.Connect(address2); });
}
}
}
}