每个进程最多打开文件

Dmi*_*try 4 macos file max ulimit

每个进程的Mac OS X(10.6)中的最大打开文件数是多少?

ulimit比256说,sysctl说10240,但我的测试程序可以创建9469(在gdb下),10252(没有gdb)文件..

Dmi*_*try 9

现在很清楚了.

ulimit命令是在shell中构建的.您可以使用ulimit -n命令为当前shell(以及从此shell启动的每个程序)设置maxfiles.

10252个文件 - 这是我的错误..当我从shell启动我的测试程序时,它是253个最大打开文件(253 + stdin + stdout + stderr = 256).

9469文件 - 我的测试程序在Xcode下运行的结果,似乎Xcode在运行程序之前设置了max maxfiles.

ulimit不是系统范围的设置,这就是为什么要设置maxfiles的系统范围值,你必须使用launchctl(系统中的第一个进程,尝试'launchctl limit')或sysctl.

答案是256个文件.