线程中TBitmap释放问题

Xhunter Xhunter 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
有个项目要在后台处理图片。一直不放心用GDI+处理,因为要在线程中处理。

为了项目平稳,我单独拿TBitmap来循环20000次测试

//同步线程
for(...)
{
Graphics::TBitmap * bit=new Graphics::TBitmap();

//简单的操作略过
//bit->FreeImage();
::DeleteDC(bit->Canvas->Handle);//这里返回来的是1,表示是成功的
bit->Free();
}

可发现内存会一点点的涨起来,或是虚拟内存,反正是这二者。有时运行2小时后,内存好象没有涨,但出错了“存储空间不足,无法处理命令”

到底TBitmap的释放机制是怎么样的。

...全文
评论 11
收藏 已收藏
分享
返回顶部
Xhunter
C++ Builder 13,871 成员 102,696 内容