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 都如此。

相关推荐
唐青枫1 小时前
C#.NET Configuration 全面解析:从多环境到强类型绑定实战
c#·.net
YuanlongWang6 小时前
C# 基础——装箱和拆箱
java·开发语言·c#
QQ129584550411 小时前
C# 如何能够创建一个MVC的WEB项目
c#·mvc
星河队长14 小时前
VS创建C++动态库和C#访问过程
java·c++·c#
William_cl14 小时前
【C# MVC 前置】异步编程 async/await:从 “卡界面” 到 “秒响应” 的 Action 优化指南(附微软官方避坑清单)
microsoft·c#·mvc
yong999015 小时前
C#驱动斑马打印机实现包装自动打印
java·数据库·c#
Jose_lz15 小时前
C#开发学习杂笔(更新中)
开发语言·学习·c#
mingupup16 小时前
WPF/C#:使用Microsoft Agent Framework框架创建一个带有审批功能的终端Agent
c#·wpf
YuanlongWang18 小时前
C# 设计模式——单例模式
单例模式·设计模式·c#
YuanlongWang18 小时前
C#基础——GC(垃圾回收)的工作流程与优化策略
java·jvm·c#