HOperatorSet.Connection 有内存泄漏或缓存

开发环境

Win7 VS2002 halcon12, 直接运行Debug的exe

宽高5000,单格1*1的棋盘占用内存

手动释放region regionConnect

private void butTemp_Click(object sender, EventArgs e)

{

butTemp.Enabled = false;

HOperatorSet.SetSystem("clip_region", "false");

{

HObject region;

HOperatorSet.GenCheckerRegion(out region, 5000, 5000, 1, 1);

HObject regionConnect;

HOperatorSet.Connection(region, out regionConnect);

region.Dispose();

regionConnect.Dispose();

}

butTemp.Enabled = true;

}

大约占用200M,两者的顺序不影响结果。

都不释放

private void butTemp_Click(object sender, EventArgs e)

{

butTemp.Enabled = false;

HOperatorSet.SetSystem("clip_region", "false");

{

HObject region;

HOperatorSet.GenCheckerRegion(out region, 5000, 5000, 1, 1);

HObject regionConnect;

HOperatorSet.Connection(region, out regionConnect);

//region.Dispose();

//regionConnect.Dispose();

}

butTemp.Enabled = true;

}

大约占350M

只释放region

private void butTemp_Click(object sender, EventArgs e)

{

butTemp.Enabled = false;

HOperatorSet.SetSystem("clip_region", "false");

{

HObject region;

HOperatorSet.GenCheckerRegion(out region, 5000, 5000, 1, 1);

HObject regionConnect;

HOperatorSet.Connection(region, out regionConnect);

region.Dispose();

//regionConnect.Dispose();

}

butTemp.Enabled = true;

}

大约占用200M

只释放regionConnect

private void butTemp_Click(object sender, EventArgs e)

{

butTemp.Enabled = false;

HOperatorSet.SetSystem("clip_region", "false");

{

HObject region;

HOperatorSet.GenCheckerRegion(out region, 5000, 5000, 1, 1);

HObject regionConnect;

HOperatorSet.Connection(region, out regionConnect);

// region.Dispose();

regionConnect.Dispose();

}

大约占用200M

其它版本

换了halcol18 halcon12的 debug release都如此。

先释放regionConnect和先释放region 都如此。

相关推荐
光泽雨14 分钟前
c#文件结构
c#
南無忘码至尊2 小时前
Unity学习90天-第2天-认识键盘 / 鼠标输入(PC)并实现WASD 移动,鼠标控制物体转向
学习·unity·c#·游戏开发
William_cl2 小时前
C# ASP.NET 分层架构实战:BLL (Service) 业务层从入门到封神(规范 + 避坑)
架构·c#·asp.net
qq_454245034 小时前
图数据标准化与智能去重框架:设计与实现解析
数据结构·架构·c#·图论
CSharp精选营4 小时前
C# 如何减少代码运行时间:7 个实战技巧
性能优化·c#·.net·技术干货·实战技巧
hhh3u3u3u17 小时前
Visual C++ 6.0中文版安装包下载教程及win11安装教程
java·c语言·开发语言·c++·python·c#·vc-1
加号317 小时前
【C#】实现沃德普线光控制器通信控制(附完整源码)
开发语言·c#
lzhdim18 小时前
SharpCompress:跨平台的 C# 压缩与解压库
开发语言·c#
~plus~20 小时前
.NET 8 C# 委托与事件实战教程
网络·c#·.net·.net 8·委托与事件·c#进阶
beyond谚语21 小时前
接口&抽象类
c#·接口隔离原则·抽象类