社区
C#
帖子详情
c# 文件保存 内存一直增加!!
wwwsyz
2007-03-29 01:58:53
一个简单爬虫
采用异步非阻塞方式对已知url列表进行采集(10w+)
采集过程中,出现一个问题
文件保存过程中 内存一直增加!
定位在文件保存,是因为我在关闭了文件保存(其他代码一样,仅将保存的操作进行了屏蔽)
内存基本上维持在相对稳定的区间波动.
保存代码就一句:
System.IO.File.AppendAllText(filename,source,encoding)
分不够继续加!
...全文
329
9
打赏
收藏
c# 文件保存 内存一直增加!!
一个简单爬虫 采用异步非阻塞方式对已知url列表进行采集(10w+) 采集过程中,出现一个问题 文件保存过程中 内存一直增加! 定位在文件保存,是因为我在关闭了文件保存(其他代码一样,仅将保存的操作进行了屏蔽) 内存基本上维持在相对稳定的区间波动. 保存代码就一句: System.IO.File.AppendAllText(filename,source,encoding) 分不够继续加!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
wwwsyz
2007-03-29
打赏
举报
回复
也用不着Collect()
记得以前写个播放器,开始内存占100k,播着就一直上升直彪到30M,然后自己回收突然下降到100k 如此循环...
是这样,内存上升到一定程度有回落,但不明显.
担心机器内存快被这个进程吃完了.(^_^)
添加上手工回收后会上升,基本上能接受!!
多谢!!!
最近写爬虫相关程序!有做类似的朋友多交流!!
Red_angelX
2007-03-29
打赏
举报
回复
也用不着Collect()
记得以前写个播放器,开始内存占100k,播着就一直上升直彪到30M,然后自己回收突然下降到100k 如此循环...
wwwsyz
2007-03-29
打赏
举报
回复
谢谢楼上的热心回复! 先谢了!!
System.IO.File.AppendAllText(filename,source,encoding)
这么写试试
StreamWriter sw = new StreamWriter(filename,false,encoding);
sw.Write(source);
sw.Close();
两种方法进行测试,差别不大!
试下GC.Collect()看下效果!!
ufoteam
2007-03-29
打赏
举报
回复
关闭以后,将变量设置为null,然后GC.Collect(),强制回收
tgl10
2007-03-29
打赏
举报
回复
同意ls的,应该是还没释放,直接操作流试下
hertcloud
2007-03-29
打赏
举报
回复
这个 可能 不是程序 问题
而是你频繁的操作造成 framework来不及释放刚才的内容
要知道 .net的内存释放并不是及时的.
Red_angelX
2007-03-29
打赏
举报
回复
System.IO.File.AppendAllText(filename,source,encoding)
这么写试试
StreamWriter sw = new StreamWriter(filename,false,encoding);
sw.Write(source);
sw.Close();
Red_angelX
2007-03-29
打赏
举报
回复
保存完后关掉文件流没有?
wwwsyz
2007-03-29
打赏
举报
回复
忘说明一点(^_^):
保存文件速度大概在60个以上/s
C#
文件
系统的操作
本课程将介绍如何在
C#
中执行读写
文件
操作,读写
文件
夹操作。
c#
文件
保存
的几个方法
文件
保存
方法1:利用SaveFileDialog控件,弹出
保存
界面,可以选择
保存
格式,
保存
路径,
保存
文件
名 //以
保存
excel为例 private void SaveFileDialog() { string localFilePath;//, fileNameExt, newFileName,...
c#
_
内存
映射
文件
内存
映射
文件
内存
映射
文件
包含虚拟
内存
中
文件
的内容。 借助
文件
和
内存
空间之间的这种映射,应用(包括多个进程)可以直接对
内存
执行读取和写入操作,从而修改
文件
。 从 .NET Framework 4 开始,可以使用托管代码...
c#
实现
内存
映射
文件
共享
内存
内存
映射
文件
是利用虚拟
内存
把
文件
映射到进程的地址空间中去,在此之后进程操作
文件
,就像操作进程空间里的地址一样了,比如使用c语言的 memcpy等
内存
操作的函数。这种方法能够很好的应用在需要频繁处理一个
文件
或者...
如何利用
C#
在
内存
中生成zip
文件
并
保存
using System; using System.Drawing.Imaging; using System.IO; using System.IO.Compression; ... public void MyZipMethod() ... using (var memoryStream = new MemoryStream()) ... using (var archive = new Zip...
C#
110,499
社区成员
642,566
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章