相机返回数据后调用GC

增加版本号:2.20.24.1
master
lhiven 1 year ago
parent a49e06e08f
commit 5e4eb1ea58

@ -76,6 +76,9 @@ namespace Rs.Camera
private void ImageCallBack(IntPtr pData, ref MyCamera.MV_FRAME_OUT_INFO_EX pFrameInfo, IntPtr pUser) private void ImageCallBack(IntPtr pData, ref MyCamera.MV_FRAME_OUT_INFO_EX pFrameInfo, IntPtr pUser)
{ {
HObject image;
HOperatorSet.GenEmptyObj(out image);
image.Dispose();
int nIndex = (int)pUser; int nIndex = (int)pUser;
string cameraname = string.Empty; string cameraname = string.Empty;
foreach(KeyValuePair<string,int> kv in cameraIDs) foreach(KeyValuePair<string,int> kv in cameraIDs)
@ -86,11 +89,10 @@ namespace Rs.Camera
break; break;
} }
} }
LogHelper.Debug($"{cameraname}有相机数据返回");
HObject image = new HObject();
//m_BufForDriver = Marshal.AllocHGlobal((Int32)pFrameInfo.nFrameLen); //m_BufForDriver = Marshal.AllocHGlobal((Int32)pFrameInfo.nFrameLen);
//CopyMemory(m_BufForDriver, pData, pFrameInfo.nFrameLen); //CopyMemory(m_BufForDriver, pData, pFrameInfo.nFrameLen);
HOperatorSet.GenImage1(out image, "byte", pFrameInfo.nWidth, pFrameInfo.nHeight, pData); HOperatorSet.GenImage1(out image, "byte", pFrameInfo.nWidth, pFrameInfo.nHeight, pData);
//Marshal.FreeHGlobal(pData);
//HOperatorSet.RotateImage(image, out HObject rotateImage, 270, "constant"); //HOperatorSet.RotateImage(image, out HObject rotateImage, 270, "constant");
if (camTrigger!=null && camTrigger.ContainsKey(nIndex)) if (camTrigger!=null && camTrigger.ContainsKey(nIndex))
{ {
@ -112,7 +114,9 @@ namespace Rs.Camera
// ImageProcess.AddAutoTrigger(image); // ImageProcess.AddAutoTrigger(image);
//} //}
} }
//image.Dispose();
//Marshal.FreeHGlobal(pData); //Marshal.FreeHGlobal(pData);
GC.Collect();
} }
} }

@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值 //可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值
//通过使用 "*",如下所示: //通过使用 "*",如下所示:
// [assembly: AssemblyVersion("1.0.*")] // [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.*")] [assembly: AssemblyVersion("2.20.24.1")]
//[assembly: AssemblyFileVersion("1.0.0.0")] //[assembly: AssemblyFileVersion("1.0.0.0")]

Loading…
Cancel
Save