社区
C++ 语言
帖子详情
webbrowser 内存泄漏问题
gykgod
2011-09-09 02:37:52
我在一个程序中起多个线程,每个线程中使用一个webbrowser控件,在线程退出以后发现gdi对象没有减少,以后再创建线程gdi对象又增加,死活不减少,进程占用的内存也在不停得飙升,不知道是为啥,请大牛帮忙看看。
谢谢
...全文
370
15
打赏
收藏
webbrowser 内存泄漏问题
我在一个程序中起多个线程,每个线程中使用一个webbrowser控件,在线程退出以后发现gdi对象没有减少,以后再创建线程gdi对象又增加,死活不减少,进程占用的内存也在不停得飙升,不知道是为啥,请大牛帮忙看看。 谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
gykgod
2011-09-13
打赏
举报
回复
To avoid a memory leak:
Always forward the IDocHostUIHandler::ShowUI and IDocHostUIHandler::HideUI methods to the original handler.
Release the pointer to the original UI handler when your object is called with IObjectWithSite::SetSite(NULL).
masterz
2011-09-09
打赏
举报
回复
办法1:用memory leakage detection 工具,比如Intel Parallel Studio 2011
办法2:看看能否把多线程结果改为多进程结构,比如chrome就是多个进程间通信。重启动进程就不要考虑不太严重的内存泄漏。
gykgod
2011-09-09
打赏
举报
回复
怎么办哪 怎么办???
辰岡墨竹
2011-09-09
打赏
举报
回复
而且同一个对象,你增加了多少引用计数,就得调用多少次Release,只有计数变成0,才会被释放。
辰岡墨竹
2011-09-09
打赏
举报
回复
你的COM组件Release了么?记得每次QueryInterface或AddRef之后都会增加一个引用计数,不用时必须Release掉。
至善者善之敌
2011-09-09
打赏
举报
回复
[Quote=引用 9 楼 gykgod 的回复:]
引用 7 楼 babilife 的回复:
引用 3 楼 gykgod 的回复:
引用 1 楼 babilife 的回复:
一直在用,没见泄露
能不能告诉一下怎么销毁webbrowser控件,才能回收内存,我用了stop和quit,都不起作用啊
看这帖子
http://topic.csdn.net/u/20080825/19/4fdd1810-cc76-45af-9aa6……
[/Quote]
貌似只有关闭程序了才不泄露,我只在主线程里用过
gykgod
2011-09-09
打赏
举报
回复
[Quote=引用 7 楼 babilife 的回复:]
引用 3 楼 gykgod 的回复:
引用 1 楼 babilife 的回复:
一直在用,没见泄露
能不能告诉一下怎么销毁webbrowser控件,才能回收内存,我用了stop和quit,都不起作用啊
看这帖子
http://topic.csdn.net/u/20080825/19/4fdd1810-cc76-45af-9aa6-e2eda5fa5ad5.html?451……
[/Quote]
蒋晟的办法 不能解决我的问题 我是多线程多个webbrowser 怎么在线程退出时候释放?
qq120848369
2011-09-09
打赏
举报
回复
频繁的申请与释放也是一个悲剧,虽然不懂,但我建议回收的时候放到对象池里。
至善者善之敌
2011-09-09
打赏
举报
回复
[Quote=引用 3 楼 gykgod 的回复:]
引用 1 楼 babilife 的回复:
一直在用,没见泄露
能不能告诉一下怎么销毁webbrowser控件,才能回收内存,我用了stop和quit,都不起作用啊
[/Quote]
看这帖子
http://topic.csdn.net/u/20080825/19/4fdd1810-cc76-45af-9aa6-e2eda5fa5ad5.html?45123394
cbib_cat
2011-09-09
打赏
举报
回复
没有用过,帮楼主顶一下!
gykgod
2011-09-09
打赏
举报
回复
[Quote=引用 2 楼 qq149850508 的回复:]
你创建的线程并没有退出
[/Quote]
窗口destory了,线程也保证已经退出了
独自听枫
2011-09-09
打赏
举报
回复
难道传说中的VS木有警告,还是说脱离了VS的管辖...
gykgod
2011-09-09
打赏
举报
回复
[Quote=引用 1 楼 babilife 的回复:]
一直在用,没见泄露
[/Quote]
能不能告诉一下怎么销毁webbrowser控件,才能回收内存,我用了stop和quit,都不起作用啊
qq149850508
2011-09-09
打赏
举报
回复
你创建的线程并没有退出
至善者善之敌
2011-09-09
打赏
举报
回复
一直在用,没见泄露
vc++ 应用源码包_1
检查
内存泄漏
源码 DigiStatic_src 自绘CStatic实现数字效果。 DirectShow开发指南pdf附属代码 DirectShow开发指南源码 directUI_D DirectUI界面库 DOM应用---遍历网页中的元素 dshowplayer 媒体播放器的实现,...
vc++ 应用源码包_2
检查
内存泄漏
源码 DigiStatic_src 自绘CStatic实现数字效果。 DirectShow开发指南pdf附属代码 DirectShow开发指南源码 directUI_D DirectUI界面库 DOM应用---遍历网页中的元素 dshowplayer 媒体播放器的实现,...
vc++ 应用源码包_6
检查
内存泄漏
源码 DigiStatic_src 自绘CStatic实现数字效果。 DirectShow开发指南pdf附属代码 DirectShow开发指南源码 directUI_D DirectUI界面库 DOM应用---遍历网页中的元素 dshowplayer 媒体播放器的实现,...
vc++ 应用源码包_5
检查
内存泄漏
源码 DigiStatic_src 自绘CStatic实现数字效果。 DirectShow开发指南pdf附属代码 DirectShow开发指南源码 directUI_D DirectUI界面库 DOM应用---遍历网页中的元素 dshowplayer 媒体播放器的实现,...
vc++ 应用源码包_3
检查
内存泄漏
源码 DigiStatic_src 自绘CStatic实现数字效果。 DirectShow开发指南pdf附属代码 DirectShow开发指南源码 directUI_D DirectUI界面库 DOM应用---遍历网页中的元素 dshowplayer 媒体播放器的实现,...
C++ 语言
64,654
社区成员
250,484
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章