Производительность UITableView и CoreData - PullRequest
0 голосов
/ 31 августа 2011

Я профилировал свое табличное представление, и одна строка, в частности, снижает частоту кадров с 50 до 30 ... Дело в том, что строка кода кажется довольно безвредной.

Он находится в: - (UITableViewCell *) tableView: (UITableView *) tableView cellForRowAtIndexPath: (NSIndexPath *) indexPath

Я удалил все не имеющие отношения к коду и просто оставил строку как:

oneSession.totalForThisMetric = [NSNumber numberWithInt: 1];

Что делает базовые данные с их установщиком, чем так сильно ухудшает производительность? totalForThisMetric не только является одноатомным, но и сохраняет временные свойства данных ядра!

1 Ответ

0 голосов
/ 31 августа 2011

Дело в том, что переходные свойства не должны устанавливаться таким образом.Вы должны установить их в методах -awakeFromFetch и / или -awakeFromInsert, в зависимости от ваших потребностей.Пожалуйста, прочтите соответствующую документацию по " Инициализация и освобождение жизненного цикла объекта " и соответствующим образом измените свой код.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...