Пример #1
0
 /// <summary>
 /// 启动订阅
 /// </summary>
 /// <param name="serviceInstanceCtor">core 传入服务实例化委托</param>
 public void StartSubscribe(Func <Type, object> serviceInstanceCtor = null)
 {
     //var queueConfig = QueueConfig.GetConfig();
     foreach (var ed in eventRegister.Values)
     {
         var queue = QueueFactory.GetQueueClient(queueConfig, ed);
         ed.IQueue = queue;
         ed.ServiceInstanceCtor = serviceInstanceCtor;//core 传入服务实例化委托
         if (ed.IsCopy)
         {
             ed.StartPublishThread();
         }
         if (ed.IsAsync)
         {
             queue.SubscribeAsync(ed);
         }
         else
         {
             queue.Subscribe(ed);
         }
     }
 }