ios – 如何分析Monotouch以查看在运行时创建的蹦床数量(按类型)?

ios – 如何分析Monotouch以查看在运行时创建的蹦床数量(按类型)?,第1张

概述关于类型0,类型1和类型2蹦床以及运行时错误,有很多帖子 “ran out of trampolines” 在iOS设备上. 我已经很好地理解了如何在AOT交叉编译期间增加不同蹦床类型的数量,但是,每当我们在运行时遇到上限时,我都会随意增加分配. 我最近添加了一个接收几个Func<>的组件.参数,组件的大多数消费者正在创建Func<>代表匿名.我的假设是虽然我可以期望每个匿名代表都会导致蹦床的创建 关于类型0,类型1和类型2蹦床以及运行时错误,有很多帖子

“ran out of trampolines”

在iOS设备上.

我已经很好地理解了如何在AOT交叉编译期间增加不同蹦床类型的数量,但是,每当我们在运行时遇到上限时,我都会随意增加分配.

我最近添加了一个接收几个Func<>的组件.参数,组件的大多数消费者正在创建Func<>代表匿名.我的假设是虽然我可以期望每个匿名代表都会导致蹦床的创建,但我似乎在观察的行为是,它不再重复使用蹦床,而是继续创建0型(ntrampoline [方法蹦床?]每一个执行匿名代表的时间.

非常有用的是一个工具或API调用,它允许我在运行时监视,记录或分析应用程序以观察创建蹦床.

关于暴露通用代表或匿名代表使用的副作用的任何指导也将受到赞赏.

感谢您提供正确方向的任何提示.

问候,
凯文费伦

解决方法 你最好的选择是向 mono-devel邮件列表提出这些(非常具体的)问题,即有几个问题(以及分析的建议)会使这里难以回答(即使它可以被正确标记).

我假设您已经阅读了下面的链接(但它们可能会帮助人们对蹦床感到疑惑).

> Monotouch Troubleshooting
>关于蹦床的Mono wiki documentation
> Blog entry试图揭开蹦床的神秘面纱

您还可以使用–stats选项从Mono获取一些统计信息.例如.

mono --stats myapp.exe...JIT statisticsUnwind info size                    : 198Calls to trampolines                : 626JIT trampolines                     : 416UnBox trampolines                   : 1Static rgctx trampolines            : 1...

但是,在使用AOT的Monotouch上下文中(许多事情不同)并且您无法控制应用程序的执行,它将无法帮助您.

总结

以上是内存溢出为你收集整理的ios – 如何分析Monotouch以查看在运行时创建的蹦床数量(按类型)?全部内容,希望文章能够帮你解决ios – 如何分析Monotouch以查看在运行时创建的蹦床数量(按类型)?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1037178.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存