gxc
2020-02-28 66a9965c44ecc32a6696abca876ab9d1cd091584
ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlThreadLogic.cs
@@ -36,7 +36,7 @@
        /// <summary>
        /// 子线程执行(创建这个东西,是为了Log出力)
        /// </summary>
        public void RunThread(Action action)
        public void RunThread(Action action, ShowErrorMode mode = ShowErrorMode.YES)
        {
            new System.Threading.Thread(() =>
            {
@@ -49,16 +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 + "]";
                    HdlLogLogic.Current.WriteLog(-1, msg);
                    HdlLogLogic.Current.WriteLog(ex);
                    HdlLogLogic.Current.WriteLog(ex, msg);
                }
            })
            { IsBackground = true }.Start();
@@ -67,7 +69,7 @@
        /// <summary>
        /// 执行运行子线程里面的主线程(创建这个东西,是为了Log出力)
        /// </summary>
        public void RunMainInThread(Action action)
        public void RunMainInThread(Action action, ShowErrorMode mode = ShowErrorMode.YES)
        {
            new System.Threading.Thread(() =>
            {
@@ -82,13 +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 + "]";
                        HdlLogLogic.Current.WriteLog(-1, msg);
                        HdlLogLogic.Current.WriteLog(ex);
                        HdlLogLogic.Current.WriteLog(ex, msg);
                    }
                });
                
@@ -99,7 +103,7 @@
        /// <summary>
        /// 执行运行于主线程(创建这个东西,是为了Log出力)
        /// </summary>
        public void RunMain(Action action)
        public void RunMain(Action action, ShowErrorMode mode = ShowErrorMode.YES)
        {
            Application.RunOnMainThread(() =>
            {
@@ -112,14 +116,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.uUnKnownError));
                        alert.Show();
                    }
                    //Log出力
                    string msg = "当前激活的界面[" + nowFormId + "]";
                    HdlLogLogic.Current.WriteLog(-1, msg);
                    HdlLogLogic.Current.WriteLog(ex);
                    HdlLogLogic.Current.WriteLog(ex, msg);
                }
            });
        }