如何释放程序占用的内存?

YiYiWenWen 2010-10-25 08:14:34
Dim fs As System.IO.FileStream = New System.IO.FileStream(file.FullName, IO.FileMode.Open, IO.FileAccess.Read)
Dim sr As System.IO.StreamReader = New System.IO.StreamReader(fs, System.Text.Encoding.UTF8)

分析数据并插入到数据库中

sr.Close()
fs.Close()

以上是程序运行的过程 这样的一段程序要循环运行1100次 插入到数据库的数据上亿 请问怎么做到资源的释放 因为现在程序根本不能运行1100次 估计到了700-800次的时候就显示无法显示网页 我怀疑是占用的资源太多了

还有 在分析数据的过程中涉及到的变量该如何释放?

谢谢了
...全文
71 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
huangwenquan123 2010-10-25
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 wuyq11 的回复:]
变量占用的内容由GC收集。
如果类中使用了非托管的资源,还是需要手动释放
GC的是.NET中对内存管理的一种功能。垃圾回收器跟踪并回收托管内存中分配的对象,定期执行垃圾回收以回收分配给没有有效引用的对象的内存。当使用可用内存不能满足内存请求时,GC会自动进行。
using (FileStream fs = File.Create(path)) {}
这么多操作是否合理
[/Quote]
up
using(FileStream fs = File.Create(path))
using(StreamReader sr=new StreamReader (fs, System.Text.Encoding.UTF8))
wuyq11 2010-10-25
  • 打赏
  • 举报
回复
变量占用的内容由GC收集。
如果类中使用了非托管的资源,还是需要手动释放
GC的是.NET中对内存管理的一种功能。垃圾回收器跟踪并回收托管内存中分配的对象,定期执行垃圾回收以回收分配给没有有效引用的对象的内存。当使用可用内存不能满足内存请求时,GC会自动进行。
using (FileStream fs = File.Create(path)) {}
这么多操作是否合理

62,025

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧