我使用POSIX调用nftw()来遍历目录结构。目录结构是平面的,只有4个文件,没有子目录.
但是,当我在这个平面目录上多次调用nftw()时,会在一段时间后收到一条错误消息:
"too many open file handles".结果发现,当使用标志FTW_CHDIR时,就会发生这种情况。
您是否同意,这是nftw()的Linux实现中的一个bug?
更新
现在已经在glibc存储库中提供了一个修复程序。
下面是一些指向我用于测试的源代码的链接:
更新
发布于 2010-02-10 22:36:56
对我来说,在linux上的nftw实现确实有问题。
我已经提交了一份错误报告,请参阅这里
UPDATE:现在在glibc存储库中有一个修复程序可用。
发布于 2010-02-10 22:39:27
它在MacOS10.6.2上也有相同的行为。所以可能是规范的一部分,虽然我看不出到底是怎么回事。
发布于 2010-02-11 23:35:08
关于Mac :作为雷达#7640283提交给苹果的bugreport。(不幸的是,没有超链接的可能。)
https://stackoverflow.com/questions/2240376
复制相似问题