ios - Xamarin iOS 应用在 iOS 12 模拟器上使用 750 个文件句柄,在 iOS 13 模拟器上仅使用 250 个
问题描述
我有一个在 iOS 12 模拟器和 iOS 13 模拟器上运行的 Xamarin iOS 应用程序。我正在使用 Visual Studio Professional 在配对的 Mac 上启动模拟器。Mac 有 iOS 12.0 模拟器和 iOS 13.3 模拟器。当我在 iOS 12 模拟器上调试我的应用程序时,通过 HttpClient 下载一堆文件后,我很快就用完了文件句柄;而在 iOS 13 上我没有。
通过 Process.Start运行lsof
表明在 iOS 12 上调试开始时打开了大约 750 个文件句柄,而在 iOS 13 模拟器上只有 250 个文件句柄。出现在 iOS 12 而不是 13 上的文件句柄是这些“iOS 12.0.simruntime”文件,如下所示:
我在我们的发布应用程序以及 iOS 12 上看到文件句柄耗尽,所以我相信这个问题不仅仅是调试相关的。我很难理解为什么所有这些文件都在调试 iOS 12 而不是 13 时打开。
解决方案
推荐阅读
- python-2.7 - pip install 在命令行中不返回任何内容
- git - 列出 a 和 b 之间的 Git 提交,仅考虑 b 的第一父母和 a 的第一父母
- javascript - 自动生成 Hreflangs
- kubernetes - GCP kubernetes - 入口报告:所有后端服务都处于不健康状态
- sql - 如何计算每个特定值的不同值的数量
- firebase - 在运行时切换 google-services.json
- javascript - 尝试将 ObjC 与 JXA 一起使用:最简单示例中的 TypeError
- sublimetext - 如何在 SublimeGIT 中使用特定的 SSH 密钥?
- swift - 如何仅使用数字作为可接受的字符串快速创建枚举
- google-apps-script - 使用 Google Apps 脚本在三个 google 工作表 onedit 上添加时间戳