| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 914 人关注过本帖
标题:vb的在进程中为何这么大呀,总是这样,没找到原因
只看楼主 加入收藏
ggyy66
Rank: 1
等 级:新手上路
帖 子:427
专家分:0
注 册:2007-8-14
收藏
得分:0 
我怀疑LZ在程序中虽然有set nothing,但是在多次调试时没有执行到set nothing就退出调试了,这也可能导致内存没有释放。

谢谢,可是我如何判断呢?也就是说如何看我的对象实例化后,在关闭窗体体没有释放。通过看任务管理器中的句柄可以吗?
还是看别的地方。反正内存占用在一直增加。我就是不知问题出在哪里。

2007-08-28 11:29
Benison
Rank: 1
等 级:新手上路
帖 子:92
专家分:0
注 册:2007-6-23
收藏
得分:0 
我都vb好象没有在进程里~~~~

2007-08-28 11:36
coachard
Rank: 3Rank: 3
等 级:新手上路
威 望:7
帖 子:1251
专家分:0
注 册:2007-8-12
收藏
得分:0 
以下是引用BEARBEN在2007-8-28 0:30:26的发言:
我怀疑LZ在程序中虽然有set nothing,但是在多次调试时没有执行到set nothing就退出调试了,这也可能导致内存没有释放。

VB中多数静态生成的东西,即使有set nothing也是不会真正从内存中卸载掉的!


偶学编程,也许本身就是一个错。。。
2007-08-28 12:59
multiple1902
Rank: 8Rank: 8
等 级:贵宾
威 望:42
帖 子:4881
专家分:671
注 册:2007-2-9
收藏
得分:0 
以下是引用BEARBEN在2007-8-28 0:30:26的发言:
我怀疑LZ在程序中虽然有set nothing,但是在多次调试时没有执行到set nothing就退出调试了,这也可能导致内存没有释放。

我比较赞同这个观点

2007-08-28 13:04
ggyy66
Rank: 1
等 级:新手上路
帖 子:427
专家分:0
注 册:2007-8-14
收藏
得分:0 

VB中多数静态生成的东西,即使有set nothing也是不会真正从内存中卸载掉的!

那用什么办法可以真正从内存中卸载掉呢?


2007-08-28 13:47
coachard
Rank: 3Rank: 3
等 级:新手上路
威 望:7
帖 子:1251
专家分:0
注 册:2007-8-12
收藏
得分:0 

这个问题我以前在别的论坛也问过,不过没有结果!

我的观点是,发果软件太大型,而且非要用VB做话,就直接调用API来实现窗口建立与布局~~~~~不用的话可以从内存中卸干净。这样可以防止内存占用过大!


偶学编程,也许本身就是一个错。。。
2007-08-28 16:16
BEARBEN
Rank: 1
等 级:新手上路
帖 子:114
专家分:0
注 册:2007-7-7
收藏
得分:0 
以下是引用coachard在2007-8-28 12:59:35的发言:

VB中多数静态生成的东西,即使有set nothing也是不会真正从内存中卸载掉的!

用Set Nothing都不能释放的内存不会占用高达380MB的。

我还是坚持的看法,我觉得是楼主调试时不在意。
我的程序中有加载GDI的,在调试时,未卸载GDI就退出了调试,结果反复操作3次左右就导致VB自动关闭了。
如果在调试过程中,启用了Hook,或API的计时器,会让VB死掉。
有时写了卸载的语句,但还没卸载就退出调试会导致内存垃圾没有被释放,反复这样VB消耗的内存就越来越多。


2007-08-28 17:46
快速回复:vb的在进程中为何这么大呀,总是这样,没找到原因
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014430 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved