在 MonoTouch 应用程序中查看内存使用情况
Posted
技术标签:
【中文标题】在 MonoTouch 应用程序中查看内存使用情况【英文标题】:Watching memory usage in MonoTouch App 【发布时间】:2013-01-28 20:19:33 【问题描述】:如何使用 MonoTouch 从应用程序内部找出我的应用程序使用了多少内存?
我基本上想要这个:
Watching memory usage in ios
它调用诸如“task_info”之类的东西
但对于 MonoTouch(如果仅适用于 iOS 也可以)。我不想要一个内存工具,比如 Instruments 等.
【问题讨论】:
【参考方案1】:我看到至少两个选项:
将“task_info”代码复制到一个新的 Xcode 项目中,并从中创建一个静态库。然后在 MonoTouch 项目中链接该静态库,并使用 P/Invoke 调用 logMemUsage。
将所有“task_info”代码翻译成 C#(在需要时使用 P/Invokes 调用本机方法)。
我可能会选择第一个选项,我相信它不太容易出错。
【讨论】:
谢谢,我希望有人会为我做这件事;) 使用 GC.GetTotalMemory() 怎么样。这是对 iOS 应用程序使用的内存的合理衡量吗?它的值似乎与 Instruments 有点不同。 @Bbx: GC.GetTotalMemory() 只会报告 Xamarin.iOS 使用的托管内存,它不会报告 iOS 本身正在使用的任何内存。以上是关于在 MonoTouch 应用程序中查看内存使用情况的主要内容,如果未能解决你的问题,请参考以下文章
Monotouch/WCF:如何在没有 svcutil 的情况下使用 wcf 服务