From 9c16d3614d9b88c637f967518a329f239fcd3aaf Mon Sep 17 00:00:00 2001 From: lss <316519258@qq.com> Date: 星期五, 12 六月 2020 09:22:04 +0800 Subject: [PATCH] 2020.06.12 --- ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlThreadLogic.cs | 68 +++++++++++++++++++++++++--------- 1 files changed, 50 insertions(+), 18 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlThreadLogic.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlThreadLogic.cs index b7e2b4e..5b405df 100755 --- a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlThreadLogic.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlThreadLogic.cs @@ -36,7 +36,7 @@ /// <summary> /// 瀛愮嚎绋嬫墽琛�(鍒涘缓杩欎釜涓滆タ,鏄负浜哃og鍑哄姏) /// </summary> - public void RunThread(Action action) + public void RunThread(Action action, ShowErrorMode mode = ShowErrorMode.YES) { new System.Threading.Thread(() => { @@ -49,17 +49,18 @@ } catch (Exception ex) { - Application.RunOnMainThread(() => + if (mode == ShowErrorMode.YES) { - //鍑虹幇鏈煡閿欒,鏁版嵁涓㈠け - var alert = new ShowMsgControl(ShowMsgType.Error, Language.StringByID(R.MyInternationalizationString.uUnknownErrorAndDataLost)); - alert.Show(); - }); + Application.RunOnMainThread(() => + { + //鍑虹幇鏈煡閿欒,鏁版嵁涓㈠け + var alert = new ShowMsgControl(ShowMsgType.Error, Language.StringByID(R.MyInternationalizationString.uUnKnownError)); + alert.Show(); + }); + } //Log鍑哄姏 - string msg = "褰撳墠婵�娲荤殑鐣岄潰[" + nowFormId + "]\r\n"; - msg += ex.Message + "\r\n"; - msg += ex.TargetSite.ToString(); - HdlLogLogic.Current.WriteLog(-1, msg); + string msg = "褰撳墠婵�娲荤殑鐣岄潰[" + nowFormId + "]"; + HdlLogLogic.Current.WriteLog(ex, msg); } }) { IsBackground = true }.Start(); @@ -68,7 +69,7 @@ /// <summary> /// 鎵ц杩愯瀛愮嚎绋嬮噷闈㈢殑涓荤嚎绋�(鍒涘缓杩欎釜涓滆タ,鏄负浜哃og鍑哄姏) /// </summary> - public void RunMainInThread(Action action) + public void RunMainInThread(Action action, ShowErrorMode mode = ShowErrorMode.YES) { new System.Threading.Thread(() => { @@ -83,14 +84,15 @@ } catch (Exception ex) { - //鍑虹幇鏈煡閿欒,鏁版嵁涓㈠け - var alert = new ShowMsgControl(ShowMsgType.Error, Language.StringByID(R.MyInternationalizationString.uUnknownErrorAndDataLost)); - alert.Show(); + if (mode == ShowErrorMode.YES) + { + //鍑虹幇鏈煡閿欒,鏁版嵁涓㈠け + var alert = new ShowMsgControl(ShowMsgType.Error, Language.StringByID(R.MyInternationalizationString.uUnKnownError)); + alert.Show(); + } //Log鍑哄姏 - string msg = "褰撳墠婵�娲荤殑鐣岄潰[" + nowFormId + "]\r\n"; - msg += ex.Message + "\r\n"; - msg += ex.TargetSite.ToString(); - HdlLogLogic.Current.WriteLog(-1, msg); + string msg = "褰撳墠婵�娲荤殑鐣岄潰[" + nowFormId + "]"; + HdlLogLogic.Current.WriteLog(ex, msg); } }); @@ -98,6 +100,36 @@ { IsBackground = true }.Start(); } + /// <summary> + /// 鎵ц杩愯浜庝富绾跨▼(鍒涘缓杩欎釜涓滆タ,鏄负浜哃og鍑哄姏) + /// </summary> + public void RunMain(Action action, ShowErrorMode mode = ShowErrorMode.YES) + { + Application.RunOnMainThread(() => + { + //璁板綍璧峰綋鍓嶇晫闈紝铏界劧浼间箮娌″暐鐢� + string nowFormId = UserCenterResourse.NowActionFormID; + try + { + action.Invoke(); + action = null; + } + catch (Exception ex) + { + if (mode == ShowErrorMode.YES) + { + //鍑虹幇鏈煡閿欒,鏁版嵁涓㈠け + var alert = new ShowMsgControl(ShowMsgType.Error, Language.StringByID(R.MyInternationalizationString.uUnKnownError)); + alert.Show(); + } + + //Log鍑哄姏 + string msg = "褰撳墠婵�娲荤殑鐣岄潰[" + nowFormId + "]"; + HdlLogLogic.Current.WriteLog(ex, msg); + } + }); + } + #endregion } } -- Gitblit v1.8.0