From 6f92829951f3ec228b18df8c157239573edd9cb4 Mon Sep 17 00:00:00 2001 From: xcd <834800634@qq.com> Date: 星期三, 09 九月 2020 15:20:53 +0800 Subject: [PATCH] 1. 取消ImageSet中的HImage释放动作,转移到业务流程中 2. 拆分板卡的IO监听和轴状态,轴位置监听 --- src/Bro.Common.Device/DeviceBase/CameraBase.cs | 25 ++++++++++++++++--------- 1 files changed, 16 insertions(+), 9 deletions(-) diff --git a/src/Bro.Common.Device/DeviceBase/CameraBase.cs b/src/Bro.Common.Device/DeviceBase/CameraBase.cs index 4204c9b..82b529d 100644 --- a/src/Bro.Common.Device/DeviceBase/CameraBase.cs +++ b/src/Bro.Common.Device/DeviceBase/CameraBase.cs @@ -152,7 +152,7 @@ set.IsOriginSaved = !set.ImageSaveOption.IsSaveOriginImage; set.IsFitSaved = !set.ImageSaveOption.IsSaveFitImage; - set.IsAddtionalSaved = !string.IsNullOrWhiteSpace(set.ImageSaveOption.AddtionalSaveType); + set.IsAddtionalSaved = string.IsNullOrWhiteSpace(set.ImageSaveOption.AddtionalSaveType); set.OnImageSetTimeout += ImageSet_OnImageSetTimeout; _imageSetList.Add(set); @@ -181,7 +181,7 @@ { set.IsOriginSaved = !set.ImageSaveOption.IsSaveOriginImage; set.IsFitSaved = !set.ImageSaveOption.IsSaveFitImage; - set.IsAddtionalSaved = !string.IsNullOrWhiteSpace(set.ImageSaveOption.AddtionalSaveType); + set.IsAddtionalSaved = string.IsNullOrWhiteSpace(set.ImageSaveOption.AddtionalSaveType); set.OnImageSetTimeout += ImageSet_OnImageSetTimeout; _imageSetList.Add(set); } @@ -196,7 +196,7 @@ public virtual async void SaveOriginImage(Bitmap map, Bitmap showImage, string imgSetId) { - Task.Run(() => + await Task.Run(() => { OnImageUpdated?.Invoke(this, showImage, imgSetId); }); @@ -539,7 +539,7 @@ }); } - protected async void Generate16GrayImageByPointer(int width, int height, IntPtr dataPtr, string imgSetId) + protected async Task Generate16GrayImageByPointer(int width, int height, IntPtr dataPtr, string imgSetId) { await Task.Run(() => { @@ -848,6 +848,11 @@ bool IsAddtionalSaved { get; set; } event Action<ImageSet> OnImageSetTimeout; + + /// <summary> + /// 搴忓垪鍖栨搷浣滅殑鍥惧儚淇℃伅 + /// </summary> + string ImageData { get; set; } } public class ImageSet : IImageSet @@ -887,6 +892,8 @@ public object SaveLock { get; set; } = new object(); + public virtual string ImageData { get; set; } + public event Action<ImageSet> OnImageSetTimeout; private Timer autoDisposeTimer = null; @@ -897,7 +904,7 @@ public ImageSet() { - autoDisposeTimer = new Timer(OnAutoDispose, null, -1, 10 * 1000); + autoDisposeTimer = new Timer(OnAutoDispose, null, 10 * 1000, -1); } public virtual void Dispose() @@ -905,11 +912,11 @@ autoDisposeTimer.Change(-1, -1); autoDisposeTimer.Dispose(); - Image?.Dispose(); - Image = null; + //Image?.Dispose(); + //Image = null; - HImage?.Dispose(); - HImage = null; + //HImage?.Dispose(); + //HImage = null; } #endregion } -- Gitblit v1.8.0