Цель c NSMutableArray removeObjectAtIndex: проблема - PullRequest
0 голосов
/ 15 августа 2011

У меня проблема с removeObjectAtIndex: с NSMutableArray. Я могу получить доступ к объекту по любому желаемому индексу, но не могу удалить его.

Я также читал этот вопрос о removeObjectAtIndex , но это не решило мою проблему. Но Diederik Hoogenboom (https://stackoverflow.com/users/118908/diederik-hoogenboom) задал вопрос в комментарии об изменении массива в другом потоке, что я и делаю, поэтому я полагаю, что проблема возникла оттуда.

Есть предложения или где почитать?

Спасибо

Edit: Вот мой код:

 NSLog(@"count = %d",[_container count]);
[_container removeAllObjects];

И что это печатает:

count = 1 2011-08-15 16: 33: 21.838 asd [56809: 903] *** - [NSCFArray objectAtIndex:]: индекс (0) за пределами (0)

1 Ответ

2 голосов
/ 15 августа 2011

Учитывая ваш ответ на мой комментарий, кажется, что ваш массив просто пуст.Как вы уже видели, вы не можете удалять элементы из пустого массива.

Редактировать: с тех пор вы отредактировали свой комментарий, поэтому требуется больше пояснений.Как именно вы определяете, что длина равна 1, прежде чем удалять предмет (код, пожалуйста).Возникает ли исключение каждый раз?Получаете ли вы доступ к массиву из нескольких потоков, и если да, то какова ваша стратегия синхронизации?

...