我有一个计算密集的应用程序,但编程相当简单。例如,没有线程。一切都是直线的。
如果我在iPhone视网膜3.5“模拟器中运行该应用程序,我可以运动该应用程序足以让它导致访问冲突没有太大困难:
{从UIView drawRect方法调用}
UIImage *image = [self getImage] ;
[image drawAtPoint:point] ; // Crash here-no identifiable pattern when it crashes here.
getImage
方法返回指向已加载的UIImage
的指针,或者加载图像并返回指针。崩溃后,调试器似乎显示有效的UIImage
。
如果我在任何其他模拟器中运行该应用程序,请不要遇到问题。事实上,这是自开发此应用程序以来我见过的第一个访问冲突。
3.5“模拟器或手机有什么本质上不同的东西吗?
答案 0 :(得分:1)
我发现了问题所在。排序。
我注意到它总是在相同的图像上崩溃。我有1700张图像,只要它在3-1 / 2“模拟器中显示这个图像---崩溃。
我将PNG图像加载到photoshop(最初创建它)。我将索引颜色更改为RGB,不再崩溃。
我不知道为什么它只会在那个模拟器上崩溃。预览,Safari,Chrome和Photoshop对图像没有任何问题。