2009-11-01 5 views
0

У меня есть этот код:sizeWithFont утечка памяти в Iphone

[[data objectForKey:[keys objectAtIndex:0]] 
        sizeWithFont:[UIFont systemFontOfSize:12] 
        constrainedToSize:CGSizeMake(276.0, 1000.0) 
        lineBreakMode:UILineBreakModeTailTruncation]; 

данных является NSDictionary.

Говорят, что этот код имеет утечку в 16 байт, но я не могу его найти.

+1

Вам необходимо предоставить более подробную информацию. Все, что у вас есть, есть доступ к чему-то в классе коллекции, вам нужно показать, как распределяется предмет, какова его область действия и т. Д. Пробовали ли вы использовать инструмент «Утечки», доступный в разделе «Инструменты»? –

ответ

2

Какой тип возвращает NSDictionary?

[[data objectForKey:[keys objectAtIndex:0]] 

Перерыв заявление до лучше понять, где утечка может быть:

NSString *s = [[data objectForKey:[keys objectAtIndex:0]]; 
CGSize size = [s sizeWithFont:[UIFont systemFontOfSize:12] 
      constrainedToSize:CGSizeMake(276.0, 000.0) 
       lineBreakMode:UILineBreakModeTailTruncation]; 
0

ли вы просачиваться только один 16byte блок для всей жизни вашего приложения? Или вы каждый раз просачиваете 16 байтов через цикл?

Если это только 16 байт, я не уверен, что я слишком переживаю об этом. Я говорю это, учитывая, что некоторые из кэширования, которые я видел в ОС, имеют тенденцию выглядеть утечкой.

Смежные вопросы