
正文
关于vb.net+释放堆的信息
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
vb.net怎么把对象真正的立即释放掉
.NET目前的垃圾回收机制不能实现把对象真正的立即释放掉,GC会对垃圾进行管理,如果垃圾没有引用计数了,就会被回收。
编码的时候能用托管类尽量用托管类去实现你的功能,
对于实现了IDisposable接口的类,用完了记得调用close或者Dispose又或者相应的方法去释放资源,最好吧使用using语句块;
对于Com对象,用完了先关闭,然后调用Runtime.InteropServices.Marshal.FinalReleaseComObject()方法把Com对象的引用计数设置为0。当 COM 对象的引用计数变为 0 时,通常会释放 COM 对象,不过这取决于 COM
对象的实现,而不是运行时可以控制的。最后调用ComObj = Nothing以释放ComObj持有的引用。不过要注意,只有当ComObj的生存期相对于垃圾回收器用于检测孤立对象的时间来说很长时,你才应该将变量设置为 Nothing。
有部分来自MSDN
相关问答
Q1: VB.NET程序如何巧妙释放内存
set xxx=nothing就是把对象占用的空间释放掉。 其他的局部变量都在栈内存,用完会自动释放的
Q2: vb.net wmp控件如何释放内存,无法删除正在播放的文件
vb.net有垃圾回收机制,一般不用自己清理内存,对象用完后用dispose方法释放就行vb.net+释放堆了,文件打开状态当然无法删除.
关于vb.net+释放堆和的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。





