From a2848781b1310f03bbac3c6b739da220382a76d9 Mon Sep 17 00:00:00 2001 From: Candy Date: Thu, 27 Aug 2020 21:54:29 +0800 Subject: [PATCH] =?UTF-8?q?=E5=86=97=E4=BD=99=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Driver/SimDriver/Driver.cs | 1 + .../His/Compress/CompressEnginer2.cs | 6 ++++ RunTime/DBRuntime/His/HisEnginer2.cs | 28 +++++++++++-------- RunTime/DBRuntime/RDDC/RDDCManager.cs | 11 ++++++-- 4 files changed, 32 insertions(+), 14 deletions(-) diff --git a/Driver/SimDriver/Driver.cs b/Driver/SimDriver/Driver.cs index 169e775..f0d95cd 100644 --- a/Driver/SimDriver/Driver.cs +++ b/Driver/SimDriver/Driver.cs @@ -109,6 +109,7 @@ namespace SimDriver /// public bool Start(IRealTagProduct tagQuery) { + mIsClosed = false; mTagService = tagQuery; InitTagCach(tagQuery); mScanThread = new Thread(ScanThreadPro); diff --git a/RunTime/DBRuntime/His/Compress/CompressEnginer2.cs b/RunTime/DBRuntime/His/Compress/CompressEnginer2.cs index 952f3c6..017d8b1 100644 --- a/RunTime/DBRuntime/His/Compress/CompressEnginer2.cs +++ b/RunTime/DBRuntime/His/Compress/CompressEnginer2.cs @@ -172,6 +172,12 @@ namespace Cdy.Tag resetEvent.Dispose(); closedEvent.Dispose(); + + foreach(var vv in mTargetMemorys) + { + while (vv.Value.IsBusy()) + vv.Value.DecRef(); + } } /// diff --git a/RunTime/DBRuntime/His/HisEnginer2.cs b/RunTime/DBRuntime/His/HisEnginer2.cs index 21f1019..e2f5618 100644 --- a/RunTime/DBRuntime/His/HisEnginer2.cs +++ b/RunTime/DBRuntime/His/HisEnginer2.cs @@ -805,18 +805,18 @@ namespace Cdy.Tag } } - /// - /// - /// - /// - private void CheckMemoryIsReady(MarshalMemoryBlock memory) - { - while (memory.IsBusy()) - { - LoggerService.Service.Info("Record", "记录出现阻塞 " + memory.Name); - System.Threading.Thread.Sleep(1); - } - } + ///// + ///// + ///// + ///// + //private void CheckMemoryIsReady(MarshalMemoryBlock memory) + //{ + // while (memory.IsBusy()) + // { + // LoggerService.Service.Info("Record", "记录出现阻塞 " + memory.Name); + // System.Threading.Thread.Sleep(1); + // } + //} /// /// @@ -1152,6 +1152,10 @@ namespace Cdy.Tag } SubmitLastDataToSave(); if (LogManager != null) LogManager.Stop(); + + mLastProcessTick = -1; + mForceSubmiteToCompress = false; + mNeedSnapAllTag = false; } /// diff --git a/RunTime/DBRuntime/RDDC/RDDCManager.cs b/RunTime/DBRuntime/RDDC/RDDCManager.cs index bfaf0e0..b82fadb 100644 --- a/RunTime/DBRuntime/RDDC/RDDCManager.cs +++ b/RunTime/DBRuntime/RDDC/RDDCManager.cs @@ -43,6 +43,8 @@ namespace DBRuntime private Thread mScanThread; + private int mNoValueCount = 0; + #endregion ...Variables... #region ... Events ... @@ -195,8 +197,8 @@ namespace DBRuntime { if (mClient.NeedReConnected) { - //mClient.Connect(RemoteIp,Port); - //Thread.Sleep(1000); + mClient.Connect(RemoteIp, Port); + Thread.Sleep(1000); } else if(mClient.IsConnected) { @@ -213,6 +215,7 @@ namespace DBRuntime var state = mClient.GetWorkState(); if (state.HasValue) { + mNoValueCount = 0; if (state.Value == WorkState.Primary && this.CurrentState == WorkState.Primary) { var time = mClient.GetStartTime(); @@ -232,6 +235,10 @@ namespace DBRuntime } } } + else + { + mNoValueCount++; + } } catch { -- GitLab