【发布时间】:2014-01-25 01:32:15
【问题描述】:
浏览我的 iPAD 应用程序一段时间后,我注意到应用程序的响应速度越来越慢,最后我的应用程序崩溃并出现以下错误
AppName(1779,0x3d12d18c) malloc: *** mach_vm_map(size=167936) failed (error code=3)
*** error: can't allocate region
*** set a breakpoint in malloc_error_break to debug
Jan 7 11:34:30 AppName[1779] <Error>: at (wrapper managed-to-native) MonoTouch.UIKit.UIApplication.UIApplicationMain (int,string[],intptr,intptr) <0xffffffff>
Jan 7 11:34:30 AppName[1779] <Error>: at MonoTouch.UIKit.UIApplication.Main (string[],string,string) <0x0012b>
Jan 7 11:34:30 AppName[1779] <Error>: at AppName.Application.Main (string[]) <0x0002f>
Jan 7 11:34:30 AppName[1779] <Error>: at (wrapper runtime-invoke) object.runtime_invoke_dynamic (intptr,intptr,intptr,intptr) <0xffffffff>
这是与内存相关的问题吗?
【问题讨论】:
-
听起来您使用单声道开发应用程序。问题出在单声道框架(祝你好运)或您的应用程序中,很可能您尝试分配太大的内存区域
-
问题出在第三方组件中,该组件通过执行计算的 for 循环更新 UI
-
哪个第 3 方组件?
-
内存损坏也可能导致这种情况可能不足为奇。我刚刚在 OS X 上运行的 C++ 程序中遇到了同样的错误,早在它开始分配大量内存之前。就我而言,根本原因是在
std::vector的末尾注销。
标签: xamarin.ios crash malloc xamarin