免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 10442 | 回复: 10
打印 上一主题 下一主题

readdir的顺序是由什么决定的? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-06-16 15:15 |只看该作者 |倒序浏览
5可用积分
在两台完全相同的机器上执行readdir,一台先读出 ./  然后读出 .. / 然后依次读各文件。另外一台先读出 ./ 然后读出的不是../
请问这个顺序的不同是由什么决定的?可以自己设置吗?谢谢!

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:53:172015亚冠之水原三星
日期:2015-06-02 16:34:202015年亚冠纪念徽章
日期:2015-10-19 18:13:37程序设计版块每日发帖之星
日期:2015-11-08 06:20:00
2 [报告]
发表于 2009-06-16 15:18 |只看该作者
scandir()
readdir() 按照存储顺序读的 (猜的)

论坛徽章:
0
3 [报告]
发表于 2009-06-16 15:26 |只看该作者
原帖由 xinglp 于 2009-6-16 15:18 发表
scandir()
readdir() 按照存储顺序读的 (猜的)

试过了,不是的

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:53:172015亚冠之水原三星
日期:2015-06-02 16:34:202015年亚冠纪念徽章
日期:2015-10-19 18:13:37程序设计版块每日发帖之星
日期:2015-11-08 06:20:00
4 [报告]
发表于 2009-06-16 15:35 |只看该作者

回复 #3 flyingbox 的帖子

看内核中的readdir的代码就明白了.跟文件系统实现有关

论坛徽章:
0
5 [报告]
发表于 2009-06-16 15:37 |只看该作者
原帖由 xinglp 于 2009-6-16 15:35 发表
看内核中的readdir的代码就明白了.跟文件系统实现有关

能进一步指点下吗?因为我用两台相同的机器和操作系统,得到的结果是不一样的

论坛徽章:
0
6 [报告]
发表于 2009-06-16 16:23 |只看该作者
排个序就一样了

只要接口能够按要求返回目录所有子项就是好的

论坛徽章:
0
7 [报告]
发表于 2009-06-16 16:46 |只看该作者
原帖由 雨过白鹭洲 于 2009-6-16 16:23 发表
排个序就一样了

只要接口能够按要求返回目录所有子项就是好的

不是仅仅为了用,而是要满足一定的条件
再说找不到原因,心里也不踏实

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:53:172015亚冠之水原三星
日期:2015-06-02 16:34:202015年亚冠纪念徽章
日期:2015-10-19 18:13:37程序设计版块每日发帖之星
日期:2015-11-08 06:20:00
8 [报告]
发表于 2009-06-16 19:17 |只看该作者
文件不停的添加删除,文件顺序慢慢就变了,  就像公共汽车,不停的有人上车下车还有人换座, 顺序肯定变了.

能进一步指点下吗?因为我用两台相同的机器和操作系统,得到的结果是不一样的


两台机器保证用相同的分区大小,相同的文件系统,而且都是空白的新建立的文件系统, 然后进行相同的操作, 之后文件操作的时间大小顺序也要一致. 再看看两边顺序一样么?

论坛徽章:
0
9 [报告]
发表于 2009-06-17 09:31 |只看该作者
原帖由 xinglp 于 2009-6-16 19:17 发表
文件不停的添加删除,文件顺序慢慢就变了,  就像公共汽车,不停的有人上车下车还有人换座, 顺序肯定变了.



两台机器保证用相同的分区大小,相同的文件系统,而且都是空白的新建立的文件系统, 然后进行相同的操 ...

===================================================================
这要求不是一般的苛刻呀。。

实际上我 先放入的文件是比后放入的先读取到的--即使你的文件在不停的更新。

这样的话,就不用关心顺序吧,自己去处理和你设的条件相符的文件就可以了啊。

这个你最好try-try
我的记性不是很好

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:53:172015亚冠之水原三星
日期:2015-06-02 16:34:202015年亚冠纪念徽章
日期:2015-10-19 18:13:37程序设计版块每日发帖之星
日期:2015-11-08 06:20:00
10 [报告]
发表于 2009-06-17 13:32 |只看该作者
原帖由 liklone 于 2009-6-17 09:31 发表

===================================================================
这要求不是一般的苛刻呀。。

实际上我 先放入的文件是比后放入的先读取到的--即使你的文件在不停的更新。

这样的话,就不用关心 ...


只能保证两边的顺序一致, 不能保证 读取顺序和存放顺序一直
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP