linux c 连续打开文件errno 13
我做了两个定时任务,第一个进程读文件,第二个进程写文件,每个10秒就执行一次,两进程是通过信号量互斥访问文件的,一开始没什么问题,可过了10多分钟,那个写文件的进程就出错...
我做了两个定时任务,第一个进程读文件,第二个进程写文件,每个10秒就执行一次,两进程是通过信号量互斥访问文件的,一开始没什么问题,可过了10多分钟,那个写文件的进程就出错了,就在fopen(filename,"w+")那里,打印errno是13,查了查是Permission denied ,我实在不明白这是为什么?文件的权限是777,怎么会这样呢?为什么执行了几十次后才出现这样的错误。
还有就是打开那个被操作文件,里面已经是空的了,看来fopen(filename,"w+")还起过作用,那位高手帮小弟解决下,讲明白了解决了问题追加50分 展开
还有就是打开那个被操作文件,里面已经是空的了,看来fopen(filename,"w+")还起过作用,那位高手帮小弟解决下,讲明白了解决了问题追加50分 展开
2个回答
2009-10-09
展开全部
你的linux运行在虚拟机里,操作的文件所在目录是与windows共享的目录,就会出现这种奇怪的问题,如果把操作的文件放在linux下的目录里(不是与windows共享的那个)就没问题了!
展开全部
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询