From ff3cfcf62632bf43e51a6b6098c203bf0f5cddbc Mon Sep 17 00:00:00 2001 From: gxc <guoxuecheng@guoxuechengdeMacBook-Pro.local> Date: 星期二, 24 十二月 2019 19:53:29 +0800 Subject: [PATCH] 2019.12.24 --- ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlThreadLogic.cs | 67 +++++++++++++++++++++++++-------- 1 files changed, 51 insertions(+), 16 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlThreadLogic.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlThreadLogic.cs index b7e2b4e..42ad680 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,19 @@ } 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.uUnknownErrorAndDataLost)); + alert.Show(); + }); + } //Log鍑哄姏 - string msg = "褰撳墠婵�娲荤殑鐣岄潰[" + nowFormId + "]\r\n"; - msg += ex.Message + "\r\n"; - msg += ex.TargetSite.ToString(); + string msg = "褰撳墠婵�娲荤殑鐣岄潰[" + nowFormId + "]"; HdlLogLogic.Current.WriteLog(-1, msg); + HdlLogLogic.Current.WriteLog(ex); } }) { IsBackground = true }.Start(); @@ -68,7 +70,7 @@ /// <summary> /// 鎵ц杩愯瀛愮嚎绋嬮噷闈㈢殑涓荤嚎绋�(鍒涘缓杩欎釜涓滆タ,鏄负浜哃og鍑哄姏) /// </summary> - public void RunMainInThread(Action action) + public void RunMainInThread(Action action, ShowErrorMode mode = ShowErrorMode.YES) { new System.Threading.Thread(() => { @@ -83,14 +85,16 @@ } 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.uUnknownErrorAndDataLost)); + alert.Show(); + } //Log鍑哄姏 - string msg = "褰撳墠婵�娲荤殑鐣岄潰[" + nowFormId + "]\r\n"; - msg += ex.Message + "\r\n"; - msg += ex.TargetSite.ToString(); + string msg = "褰撳墠婵�娲荤殑鐣岄潰[" + nowFormId + "]"; HdlLogLogic.Current.WriteLog(-1, msg); + HdlLogLogic.Current.WriteLog(ex); } }); @@ -98,6 +102,37 @@ { 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.uUnknownErrorAndDataLost)); + alert.Show(); + } + + //Log鍑哄姏 + string msg = "褰撳墠婵�娲荤殑鐣岄潰[" + nowFormId + "]"; + HdlLogLogic.Current.WriteLog(-1, msg); + HdlLogLogic.Current.WriteLog(ex); + } + }); + } + #endregion } } -- Gitblit v1.8.0