打开文件失败,可能是文件系统的问题
删除文件a之后,重命名b为a,然后立即打开a文件,经常失败,要等待一会才好 怎么操作的,帖代码吧我这边加文件操作的命令,串口端输出结果正常:
finsh>>dfs_file_rename("/b.txt","/a.txt")
0, 0x00000000
finsh>>cat("/a.txt")
你好,RT-Thread
abcdefgh 0, 0x00000000
finsh>> 我是写了好几个文件,其中一个很大,几十MB
unlink("/a");
dfile_raw_rename("/b","/a");
fd = open("/a",O_RDONLY,0);
有可能失败
要等一会才行 涉及到多线程访问吗?如果涉及到多线程访问,需要在rtconfig.h中把RT_DFS_ELM_REENTRANT定义打开。 多线程,我再测试一下看看 我的是0.30 没有RT_DFS_ELM_REENTRANT
ffconf.h 里有
#define _FS_REENTRANT 0
改成了1
为什么默认不设为1呢, 稳定性,还是性能方面的考虑? 明白了 和长文件名不兼容?!
页:
[1]