/// <summary> /// 异步订阅 /// </summary> /// <typeparam name="TMessage">消息模型</typeparam> /// <param name="mq"></param> /// <param name="handler"></param> /// <returns></returns> public static Task <IMQ> SubscibeAsync <TMessage>(this IMQ mq, IHandler <TMessage> handler) { return(Task.Run(() => mq.Subscibe(handler))); }
/// <summary> /// 异步订阅 /// </summary> /// <typeparam name="TMessage"></typeparam> /// <param name="mq"></param> /// <param name="action"></param> /// <returns></returns> public static Task <IMQ> SubscibeAsync <TMessage>(this IMQ mq, Action <TMessage> action) { return(Task.Run(() => mq.Subscibe(action))); }
/// <summary> /// 订阅事件 /// </summary> /// <typeparam name="TMessage">消息模型</typeparam> /// <param name="mq"></param> /// <param name="handler"></param> /// <returns></returns> public static IMQ Subscibe <TMessage>(this IMQ mq, IHandler <TMessage> handler) { return(mq.Subscibe <TMessage>(m => handler.Handle(m))); }
private static IMQ SubscibeInternelHandle <TMessage>(this IMQ mq, Handle <TMessage> handle) { return(mq.Subscibe <TMessage>(handle.Invoke));; }