vb.net释放内存的简单介绍

vb.net wmp控件如何释放内存,无法删除正在播放的文件

vb.net有垃圾回收机制,一般不用自己清理内存,对象用完后用dispose方法释放就行了,文件打开状态当然无法删除.

成都地区优秀IDC服务器托管提供商(成都创新互联公司).为客户提供专业的简阳服务器托管,四川各地服务器托管,简阳服务器托管、多线服务器托管.托管咨询专线:18982081108

vb.net 彻底释放内存

我都不敢认你这玩意了,不知是不是要把我2GB的内存变成1GB的,还是说把占用空间清理一些?如果是这样的话,那也真的是有点可怕,万一把正在使用的变量给清了,会不会出错?或者弄得程序发神经,乱搞了?

VB.NET程序如何巧妙释放内存

set xxx=nothing就是把对象占用的空间释放掉。 其他的局部变量都在栈内存,用完会自动释放的

我用VB.NET编了个程序,在加在一些数据是,会占用很多系统资源

可以将文件等分成两部分,分别用两个private读取就是2线程。

内存解决方案:不要等程序自动GC,自己手动释放不需要内存。

缺陷:可能会浪费时间。

VB.net2000的自动垃圾回收机制到底管用么???????!!!!

分类: 电脑/网络 程序设计 其他编程语言

问题描述:

别跟我说VB2000自动释放内存,曾经深信这句话的我,如今已是伤痕累累,好几个大项目都差点毁在vb的内存问题上,C#我倒不知道..VB的回收内存速度太慢了,这只是保守的说,其实本人认为它根本不会回收内存.就算全部用上gc.collet也回收不了,而且越用越慢

在使用我的项目的时候,随着窗口的开开关关\控件的调用,内存一直飙,从14MB左右一路疯狂飙高,40分钟系统就崩溃了...上了补丁的XP可以不死机,但就定着不动了..如果虚拟内存文件大,可以维持到撑满,但录一条记录平均要等一个小时!!!!!!!,后来我学乖了开始nothing全局变量(工作量惊人...),结果内存开始有下走的现象(原来是一路向上..只占不放)但内存还是呈曲线上飙,40分钟到200多MB,于是我开始释放局部变量,在每个方法中都要释放!!!!!!!!!!!!!!!!!!!!!,而且还要区分哪些是引用!痛苦啊!!!

...结果三个月之后,满面憔悴的我终于发现内存接近正常了,虽然还不是释放的很干净,但能保证在一段时间内不会崩溃了..至少客户做的时候没再提过意见...我并没有优化什么代码,只是痛苦的释放了一些全局和局部变量,结果内存就不消耗的那么厉害了,你说奇怪不奇怪..但内存始终不是释放的那么干净,我算过了一分钟内曲线飙高2MB左右,有时更多照这样一来,真是早死不如晚死,想想将来还不如用java重新做呢...各位可怜可怜我吧,有什么好主意整理vb2000的内存的好东东,就告诉我吧!!!!!!!!!!我真的受不了了!!!!!有没有什么方法可以重新分配内存呢,就算会造成页中断我也在所不惜!!!!

另外Me.Refresh()是什么意义,能释放内存么?

解析:

很简单,你没有正确理解VB的内存自动回收机制,仔细看一下MSDN,好好研究一下相关的内容。其实JAVA的内存自动回收机制与VB是类似的,如果你用VB.NET做不好,换用JAVA照样做不好。

其实,你已经发现了为什么内存不能回收,只是你没意识到罢了。

为什么要用全局变量呢?给你举个极端的例子吧:建立一个全局的Hashtable,然后将程序中创建的每一个对象实例加入到这个hashtable中,那么你将看到内存一直猛增,直到崩溃。

正确的作法是:

1、尽量不用、少用全局变量和静态变量

2、如果没有必要,就不要把对象实例加到全局或静态的Hashtable、ArrayList之类的 *** 中去,除非你是想自己建立一个对象缓冲池

3、如果你自己要建立对象缓冲池,就一定要注意对象的清理,尽早将不用的对象从池中删除

4、找本好一点的数据结构,仔细学学其中关于自动内存回收的那几种机制,以后在程序中不要违反它们的要求前提条件。

跪求大神指点vb.net 怎么释放变量在内存中的残留地址值呀

.net 有自己的资源回收机制GC。

如果变量不再使用了,所有引用该变量的其它变量也都没用了(dispose或者赋值为空了),那么这些没用的变量会定时的被GC自动回收,不需要自己去管理。

如果非要自己释放资源的话,可以使用 GC.Collect() 进行释放,但是并不能保证一次GC.Collect()就可以释放掉所有没有用的资源,可能要经过好几轮GC.Collect()才能释放干净。

所以还是建议不要手动回收了,让系统根据要求自动回收吧。


文章名称:vb.net释放内存的简单介绍
分享链接:http://pwwzsj.com/article/hgedjg.html