Valgrind 对 MonoTouch 提供支持

  • Jonathan Allen
  • 方盛

2012 年 11 月 16 日

话题:语言 & 开发

虽然大部分时间我们谈论的都是静态分析工具,但是当处理内存和线程相关的问题时动态分析工具却更为有效。这就是为什么像 Valgrind 这样的分析框架如此重要的原因。

从 monoTouch 5.4 开始,开发者就可以使用Valgrind来调试基于 iOS 的应用程序了。我们推荐 Valgrind 3.7.0 或更高版本,在编译时需要指定如下标记:--enable-only32bit 和 --prefix=/usr/local。

Valgrind 直接提供了以下几个工具:

  • 内存错误探测器
  • 两个线程错误探测器
  • 高速缓存与分支预测剖析器
  • 调用图生成缓存与分支预测剖析器
  • 堆分析器

因为 Valgrind 是一个框架,所以开发者偶尔可以基于它创建一些新的工具和变种。

Rolf Bjarne Kvinge也警告到, Valgrind 可能会产生一些噪音,只需关注“Invalid read of size X”和“Invalid write of size X”等提示信息即可。

查看英文原文Valgrind Support for MonoTouch


感谢臧秀涛对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ)或者腾讯微博(@InfoQ)关注我们,并与我们的编辑和其他读者朋友交流。

语言 & 开发