在典型的操作系统上,使用标准 C 盘 IO 可以一次打开多少个文件?
我试图读取一些应该告诉它的常量,但在 Windows XP 32 位上,这个值只有区区 20 左右。虽然它似乎可以在超过 30 个的情况下正常工作,但我还没有对其进行广泛的测试。
我最多需要一次打开大约 400 个文件,所以如果大多数现代操作系统都支持这一点,那就太棒了。它不需要支持XP,但应该支持Linux、Win7和最新版本的Windows服务器。
另一种方法是编写我自己的迷你文件系统,如果可能的话我想避免这样做。
在 Linux 上,这取决于可用文件描述符的数量。
您可以使用ulimit -n
设置/显示每个 shell 可用 FD 的数量。
看看这些指示 http://www.cs.uwaterloo.ca/~brecht/servers/openfiles.html如何检查(或更改)Linux 中可用的总 FD:s 的值。
建议在 Windows 上该数字为 512,您可以在注册表中更改它(按照文章中的说明)
作为open()
返回 fd 为int
- int 的大小也是上限。
(无关紧要,因为 INT_MAX 很大)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)