Android 上的文件描述符的最大数量是多少?

What's the max number of file descriptors on Android?

我们正在 Android 上使用 Erlang VM 运行 Couch DB。最近我们遇到了一个限制,Erlang 抱怨超出文件描述符。

Erlang 计算最大文件描述符的方式在这里 - https://github.com/erlang/otp/blob/maint/erts/emulator/sys/common/erl_poll.c#L2308-L2320

根据上面的代码,max_fds 会在 Android 上设置什么?在我们的例子中,它会抛出错误,指出文件描述符超过 255 个。这个数字这么低吗?

此外,我们是否可以增加此限制,以便我们在 Android 上获得 512 或 1024 max_fds?

更新: 我得到了一些额外的信息。 Android 有 sysconf 方法,它返回最大打开文件描述符限制的 256。奇怪的是Android允许一个进程打开1024个文件。所以看起来 sysconf 在系统支持的地方返回了一个错误的值。这是 Android 中的错误吗?

Android(JB 和 Lollypop)对于 sysconf(_SC_OPEN_MAX) 似乎确实是 return 256,而它实际上支持一个进程最多 1024 个文件描述符。这对我来说就像一个错误。

如有错误,请在评论中更新。

谢谢