src/sample/XXX.Plugin.ZeroMQ/StartTask/NetMqTask.cs
(开头部分) 4KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using NetMQ;
using NetMQ.Sockets;
using System.NetPro;
namespace XXX.Plugin.ZeroMQ.StartTask
{
/// <summary>
/// 初始化ZeroMQ订阅者
/// </summary>
public class NetMqTask : IStartupTask
{
public NetMqTask()
{
}
public int Order => 0;
public void Execute()
{
//Task.Factory.StartNew(() => {
// using (var publisher = new PublisherSocket())
// {
// //发布是由于本机承载故配回环地址即可
// //发布者优先使用bind方法;订阅者和拉取侧优先使用Connect;发布者和推送者优先使用回环地址
// publisher.Bind("tcp://*:81");
// while (true)
// {
// publisher
// .SendMoreFrame("A:b") // Topic支持特殊符号,topic命名最佳实践:模块名/功能命/功能层级
// .SendFrame(DateTimeOffset.Now.ToString()); // Message
// }
// }
//});
//Task.Run(() =>
//{
// using (var pushSocket = new PushSocket())
// {
// //发布是由于本机承载故配回环地址即可
// //发布者优先使用bind方法
// pushSocket.Bind("tcp://*:82");
// while (true)
// {
// pushSocket.SendFrame("Hello Clients");
// //Console.WriteLine("推送-Hello Clients");
// }
// }
//});
//ZeroMQ订阅者,订阅者与发布者无先后顺序
Task.Factory.StartNew(() =>
{
using (var subscriber = new SubscriberSocket())
{
////随机端口方式
//var port = subscriber.BindRandomPort("tcp://localhost");
subscriber.Connect("tcp://localhost:81");
//可同时订阅多个主题,
//subscriber.Subscribe("A:b:g");//支持/;:符号分割
后面还有 47 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。