请问Windows中打开文件的数量是否有限制

Windows中打开文件的数量是否有限制

我在VC ++中用fopen()打开了很多文件,但过了一段时间它就失败了。

您可以同时打开的文件数量是否有限制?


ibeautiful
浏览 1402回答 3
3回答

喵喵时光机

C运行时库对任何时候都可以打开的文件数有512个限制。尝试打开超过最大数量的文件描述符或文件流会导致程序失败。使用_setmaxstdio更改此数。有关这方面的更多信息,请参阅此处此外,您可能必须检查您的Windows版本是否支持您尝试设置的上限_setmaxstdio。有关_setmaxstdio查看此处的更多信息有关VS 2015对应主题的信息可在此处找到

qq_笑_17

如果其他人不清楚限制的适用范围,我认为这是一个每个进程限制而不是系统范围。我刚写了一个小的测试程序来打开文件,直到它失败。在失败之前得到2045个文件(2045 + STDIN + STDOUT + STDERROR = 2048),然后我将其打开并运行另一个副本。第二个副本显示相同的行为,这意味着我一次打开至少4096个文件。
打开App,查看更多内容
随时随地看视频慕课网APP