把一个对象Dispose()跟 把一个对象赋为空 这两个有什么区别?
解决方案 »
- LPSAFEARRAY 在C#中的转化
- @字符串求解
- IE无法显示内容,也没有报错
- 请问:如何做限制使在textbox中只能输入英文?
- 关于接口
- windows XP里面自动产生的可以直接执行的压缩文件是怎么生成的?
- treeview和contextmenu问题
- 请推荐一两本C#关于数据库和WEBSERVERS方面的书
- 谁有在C#中操作excel和word的资料阿,介绍几个@谢谢!
- 实在没招了:将dataSet.Tables[0]用sqlDataAdapter(已从SQL数据库中读出一张表)填充后,用DataColumnCollection增加了一个自定义的已赋
- 谁来给我一个解释,为什么这些莫名其妙的问题老出现在我身上 DATATABLE.SELECT
- 使用静态的有什么好处?
而设为null,只是说明声明的变量现在指向空,但是对象的的资源还在内存中,不过没有句柄指向他,需要等垃圾回收自动回收
Dispose方法能让你手动释放其非托管资源的内存,是必要的。
1个变量在定义的时候就已经分配了一个空间,只不过你赋值 Null,严格说是占内存的。
2、Dispose()与Null 性质完全不同。
出于安全考虑啊,都要使用Dispose(),还有一个就是close().没使用他们的,出了问题的,不要说微软垃圾。
Dispose是你手动释放了资源,而null只不过是在内存中开辟了此空间,但是没有存放值
Null是指公司不景气,你先暂时别干活了,等公司好了再找你Dispose()和Close()的区别基本上都是没有区别的,只是使用有点不同解释一下:Dispose()就是lay off
Close()就是开除为什么要出来Close呢?因为不明白英语的人不知道lay off什么意思