8

我目前正在开发一款很酷的 Android 游戏,该游戏即将发布。我们的一些 Beta 测试人员开始抱怨游戏崩溃并显示“打开的文件太多”错误消息。我尝试在 AVD 模拟器上模拟此问题,但无法重现该错误。

后来,我意识到只有我们的 Galaxy S3 和 Asus Nexus 7 测试人员在抱怨。我在 Android 的 bug tracker 上发现了这个 bug 问题,这听起来与我发生的事情非常相似。

这听起来像是一个严重的架构问题,会影响所有内部 SD 卡设备。这些设备仅限于 1024 个文件描述符!有人可以确认这个问题吗?

4

1 回答 1

5

实际上,这个应用程序是否打开了很多文件并不重要。令人不安的是,整个设备仅限于 1024 个打开文件。以运行 100 个应用程序的 Galaxy S3 设备为例,每个应用程序同时打开 10 个文件(属性、数据库等)。这已经非常接近极限了。

如果您检查大多数设备上的最大打开文件限制 (/proc/sys/fs/file-max),它远远超过 50K。

于 2012-11-07T13:13:44.533 回答