搜索
bottom↓
回复: 6

打开文件失败,可能是文件系统的问题

[复制链接]

出0入0汤圆

发表于 2011-1-18 11:13:36 | 显示全部楼层 |阅读模式
删除文件a之后,重命名b为a,然后立即打开a文件,经常失败,要等待一会才好

阿莫论坛20周年了!感谢大家的支持与爱护!!

曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……

出0入0汤圆

发表于 2011-1-19 09:32:13 | 显示全部楼层
怎么操作的,帖代码吧
我这边加文件操作的命令,串口端输出结果正常:
finsh>>dfs_file_rename("/b.txt","/a.txt")
        0, 0x00000000
finsh>>cat("/a.txt")
你好,RT-Thread
abcdefgh        0, 0x00000000
finsh>>

出0入0汤圆

 楼主| 发表于 2011-1-19 16:37:39 | 显示全部楼层
我是写了好几个文件,其中一个很大,几十MB
unlink("/a");
dfile_raw_rename("/b","/a");
fd = open("/a",O_RDONLY,0);
有可能失败
要等一会才行

出0入0汤圆

发表于 2011-1-19 18:18:31 | 显示全部楼层
涉及到多线程访问吗?如果涉及到多线程访问,需要在rtconfig.h中把RT_DFS_ELM_REENTRANT定义打开。

出0入0汤圆

 楼主| 发表于 2011-1-20 20:52:33 | 显示全部楼层
多线程,我再测试一下看看

出0入0汤圆

 楼主| 发表于 2011-1-21 13:04:24 | 显示全部楼层
我的是0.30 没有RT_DFS_ELM_REENTRANT
ffconf.h 里有
#define _FS_REENTRANT        0
改成了1

为什么默认不设为1呢, 稳定性,还是性能方面的考虑?

出0入0汤圆

 楼主| 发表于 2011-1-21 13:19:24 | 显示全部楼层
明白了 和长文件名不兼容?!
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-8-26 08:09

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表