ADO.NET的难题 请问各位大侠,DataSet在内存中的保留期是多久? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 DataSet对象声明为某个类的成员生命周期就等于类 如果在某个方法内声明,生命周期在方法执行完毕结束可缓存 看你在那里定义DataSet,如果是类的成员变量,那么这个类的生命周期结束后,这个DataSet就会在某个时刻(GC执行时)被回收。如果在某个方法内定义,那么这个方法结束后,某个时候GC就会回收它。 一般情况下垃圾回收器会很久才执行一次回收,也会在分配给某个进程或者线程的内存超出后自动执行。其他时候都不会随便执行垃圾回收的,因为这样做是很消耗系统资源的。对于DataSet这种大对象也会依照大对象的处理方法进行释放,不过请你放心,微软在处理DataSet这种复杂的大对象时会有很多优化方法,他的内存也完全依照框架来进行释放。垃圾回收这种对象的时候,还要看这个对象是否有正在被使用,例如你声明了某个静态变量,他引用了某个DataSet那么他怎么也不会被释放的。只有没有任何类或者正在使用的页面引用某个DataSet时,在下次垃圾回收的时候才会回收他。 DataSet和别的对象没有区别。DataSet里面的数据则取决于是否是延迟加载的。垃圾回收是在对象超过生命周期之后进行的。如果是程序生命周期,那么只要程序运行着,对象就永远存在。 接口的语法问题 问个奇怪问题,请大家支招 winform 做暂停效果 向Mysql插入日期型数据的问题? 有谁知道C#开发在线语音技术的! winform中遇到的问题 C#中怎么读写计算机总线,比如ISA 如何吧一个图片转换为单色图片(不是灰度,就要黑白两色) List<Rectangle> 的集合怎么修改矩形的点? 请问在c#中能否使用FLASH播放文件?怎么样插入呢? 判读输入字符串是不是数字 Cookie的Secure属性 及 HttpWebRequest 使用问题
如果在某个方法内声明,生命周期在方法执行完毕结束
可缓存
DataSet里面的数据则取决于是否是延迟加载的。垃圾回收是在对象超过生命周期之后进行的。如果是程序生命周期,那么只要程序运行着,对象就永远存在。