目标C中的线程和二维数组?

时间:2010-03-26 14:15:35

标签: objective-c multithreading

嘿,伙计们,我刚刚开始围绕目标C,我正在做一个关于Iphone的小项目。我刚遇到一个奇怪的问题。我必须在我的程序中处理图像,所以我有很多局部变量声明像temp [width] [height]。如果我没有使用NSThread来执行图像处理,它可以正常工作。但是,如果我使用NSThread,每当我尝试访问声明为temp [widht] [height]的二维数组时,它都会继续给我EXC_BAD_ACCESS。所以我必须从堆中分配内存才能拥有一个二维数组。这将解决问题,但我仍然没有得到它。我的第一个想法是堆栈溢出,但它在一个线程上运行良好。我只是不明白。

1 个答案:

答案 0 :(得分:0)

在线程完成数组之前,可能是数组本地的方法终止,因此您的数组超出范围并且内存被占用会被用于其他内容。但是你的线程不知道这一点并且无论如何访问内存。