業務場景:提交訂單后需要推送微信消息。但是推送消息執行的有點慢導致訂單提交時間過長
解決辦法:消息提送部分異步執行
定義異步執行的公共類
public class TaskEx { /// <summary> /// 異步執行,並TRY /// </summary> /// <param name="type"></param> /// <param name="action"></param> public static void Run(Type type, Action action) { System.Threading.Tasks.Task.Run(() => { try { action(); } catch (Exception ero) { LogHelper.LogWrite($"Common.Task[{type}:{ero.ToString()}]"); } }); } }
在程序中調用
Common.TaskEx.Run(GetType(), () => { new MsgBusiness().SendOrderMsg(orderinfo, userInfo); });
