Эй, ребята, я только начинаю крутить голову вокруг цели C, и я делаю небольшой проект на Iphone. И я просто столкнулся с какой-то странной проблемой. Мне пришлось иметь дело с изображениями в моей программе, поэтому у меня есть много локальных переменных, объявленных как temp [width] [height]. Если я не использую NSThread для обработки изображений, все работает отлично. Однако, если я использую NSThread, он будет давать мне EXC_BAD_ACCESS, когда я пытаюсь получить доступ к 2-мерному массиву, объявленному как temp [widht] [height]. Поэтому я должен выделить память из кучи, чтобы иметь 2-мерный массив. Это решит проблему, но я до сих пор ее не понимаю. Моя первая мысль была бы сложена над потоком, но она работала отлично с одним потоком. Я просто не понимаю.Резьба и двумерный массив в объективе C?
ответ
Возможно, метод, к которому привязан массив, заканчивается до того, как поток завершит работу с массивом, поэтому ваш массив выходит из сферы действия и занятая память используется для чего-то другого. Но ваш поток не знает этого и независимо от него обращается к памяти.
Есть ли все-таки дело с этой проблемой? Я ноб на многопоточном ... – user302581
многопоточность очень сложна, и есть много проблем, связанных с (условия гонки, тупик и т. Д.). Возможно, вы захотите их прочитать. Для этой конкретной проблемы вы должны распределять общие ресурсы в куче или, предпочтительно, использовать объекты объектного типа, такие как NSArray (которые в любом случае распределены на куче). – shosti
Спасибо, ребята! Я нашел проблему. Это был стек над потоком. Я создал массив 1-D и попытался получить доступ к нему, но все еще не был. И затем я сделал это меньше, и это сработало. Я думаю, либо установить размер стека, вызвав метод до добавления потока или выделения памяти из кучи, чтобы он работал. Не уверен, по умолчанию, сколько памяти стека было выделено для потока. – user302581
- 1. Двумерный массив C
- 2. Как отсортировать многомерный массив в объективе-c?
- 3. двумерный массив: C Программирование
- 4. Определение и индексирование в двумерный массив - C
- 5. Массив указателей в объективе-c
- 6. универсальный массив в объективе C
- 7. Массив UIImageViews в объективе-c
- 8. Печатать массив в объективе-c?
- 9. Случайный двумерный массив в C
- 10. C/C++ Ввод строки в двумерный массив?
- 11. (C) Функция с двумерный массив
- 12. C указатель на двумерный массив
- 13. гнезда и резьба в C
- 14. Двумерный массив в указатель
- 15. C: Как работает двумерный массив?
- 16. C двумерный массив двумерного массива
- 17. Заполнить двумерный массив объектов C++
- 18. C++ Как заполнить двумерный массив
- 19. Двумерный массив
- 20. Двумерный массив
- 21. Двумерный массив с переменным размером в C
- 22. Как отсортировать двумерный массив в C#?
- 23. Инициализировать большой двумерный массив в C++
- 24. Инициализация большой двумерный массив в C
- 25. Читайте только двумерный массив в C#
- 26. C# - Преобразование строки в двумерный массив строк
- 27. Как заполнить двумерный массив символами в C?
- 28. Ошибка пытается распределить двумерный массив в C
- 29. Как разобрать массив JSON в объективе-c
- 30. Добавление элементов в двумерный массив C++
Я думаю, нам нужно увидеть конкретный пример. – AnthonyLambert
Пожалуйста, отправьте код. –