社区
C语言
帖子详情
c语言打开文件不关闭的后果?
C员外
2007-08-18 04:48:48
最近接手改造一个scounix下c语言开发的后台项目,需要频繁打开文件,代码实现过程中文件打开后竟然没有关闭!
疑惑:这个后台系统一直运行一年多也没有问题,很少重启,打开文件量也很大(每天2000次左右)啊,也没有出现打开文件失败的日志,真的很纳闷!
难道操作系统自动关闭文件l了还是操作系统支持打开文件数很大?
...全文
1954
10
打赏
收藏
c语言打开文件不关闭的后果?
最近接手改造一个scounix下c语言开发的后台项目,需要频繁打开文件,代码实现过程中文件打开后竟然没有关闭! 疑惑:这个后台系统一直运行一年多也没有问题,很少重启,打开文件量也很大(每天2000次左右)啊,也没有出现打开文件失败的日志,真的很纳闷! 难道操作系统自动关闭文件l了还是操作系统支持打开文件数很大?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
夏至夕陽
2007-08-20
打赏
举报
回复
只有一个进程打开一个文件,另一个进程又要打开这个文件的话才会报错吧
C员外
2007-08-20
打赏
举报
回复
代码确定没有close,整个系统就这个服务(单线程)在跑,在重复的读写.
因为打开的是重复的文件,打开过的文件句柄被冲掉了一直没有释放,内存泄漏.
应该会导致系统打开文件数目的极限。但我没有看到打开文件失败的日志,所以才奇怪(也许应用服务会周期性重启,这个就不知道了)。
linux打开文件数量能通过内核更改再编译或用ulimit更改,scounix刚手,还不怎么会用...
zylian
2007-08-19
打赏
举报
回复
补充楼上的,
你家可以有千万观众观看,但进去的却是只有一个
查看可以无限制,但一但修改就不行了.
iambic
2007-08-19
打赏
举报
回复
一个文件当然可以被几个进程同时访问,既然如此,被一个进程访问几次又有什么不行的。
不过如果你同时对文件读、写,会有同步的问题。
ForestDB
2007-08-19
打赏
举报
回复
呵呵,好玩。
个人觉得cceczjxy()讲的有点道理,要不就是关掉了,要不是系统资源开得非常大,这才没有memory leak出现。
Avoid
2007-08-19
打赏
举报
回复
这个就像你把家里门打开了。。。
没有贼那就没啥鸟是了。。。
shjmqqc111
2007-08-19
打赏
举报
回复
这个fopen只是缓冲打开的.不是直接的文件读写.在说只是读.没有写.应该不会出现问题.
但如果有写.不出问题才是怪事了.
cceczjxy
2007-08-18
打赏
举报
回复
fp = fopen("pp.txt","r");
fread(......);
ft = fopen("pp.txt","r");
你样当然可以了,fp,和ft不是同一个流.只是打开的文件相同而已.
楼主仔细找找,应该有其它地方关闭它.
要不就是系统内设置的进程的最大打开文件数设置的非常大,
按你说的,至少要大于800000.
这样也不是不可以.
ulimit 你可以看一下,你的设置.
gqhonesty
2007-08-18
打赏
举报
回复
刚才在VC下式了下,居然没有问题哈!
FILE *fp,*ft;
fp = fopen("pp.txt","r");
fread(......);
ft = fopen("pp.txt","r");
if(ft==NULL)
{
printf("error!\n");
}
居然没有看到error字样,我靠!
gqhonesty
2007-08-18
打赏
举报
回复
C可以不关闭文件,再打开吗?
好像不行把!
C语言
之文件操作
c语言
的文件操作介绍 文件的打开与
关闭
...所谓
打开文件
,实际上是建立文件的各种有关信息,并使文件指针指向该文件,以便进行其它操作。
关闭
文件则断开指针与文件之间的联系,也就禁止再对该文件进行操作
C语言
课程设计仿Linux的文件管理系统
利用
c语言
实现仿Linux的文件操作,包括: format-格式化; exit-安全退出·文件系统,保存信息; mkdir dirname :创建子目录; rmdir dirname :删除子目录. ...open filename :
打开文件
. close filename :
关闭
文件.
C语言
--视频精讲
C语言
作为被长期使用的编程语言,可以被运用到各种操作系统,游戏,开发中。本课程作为互联网上首家使用C99录制的
C语言
教程,展现了全面、专业。标准的
C语言
教程。可以帮助学员从基础开始一点点的深刻理解
C语言
。
操作系统
c语言
模拟文件管理系统
运行成功,比较基础,登录后,对文件进行创建,删除,打开,
关闭
,读取,写入,保存,打印当前文件功能
C语言
文件操作、文件指针、文件打开和
关闭
c语言
文件读写操作代码,
C语言
文件操作、文件指针、文件打开和
关闭
C语言
69,382
社区成员
243,073
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章