Я использую Objective C с ARC. У меня есть следующий фрагмент кода, который, кажется, теряет память из-за форматирования строк.Утечка памяти в String Formatter
Я изменил метод stringWithFormat
удобства в более общий alloc init
, но он по-прежнему утечку памяти в этой строке.
Я прочитал here, что я должен использовать copy
ключевое слово, но он по-прежнему утечки памяти в этой строке.
Теперь, когда я удалить форматировщик вообще, код не утечка памяти в этой строке.
- Почему эта линия вызывает утечку памяти?
- Как я могу решить эту утечку памяти?
Дополнительная информация:
- Код написан в: Xcode 6.3.1
- Утечки памяти визуализированы с помощью: инструменты из Xcode 6.3.1
- IOS развертывания Цель: IOS 5,0
Код базы:
#define DATABASE_NAME @"orderwriter"
+ (SQLiteManager *) getSQLiteManager
{
// NSInteger userId = [(NSString *)[AppUtil NSDefaultforKey:USER_ID] integerValue];
// NSString *dbName = [NSString stringWithFormat:@"%@_%ld.db", DATABASE_NAME, (long)userId];
NSString *dbName = @"orderwriter_58.db";
SQLiteManager *dbManager = [[SQLiteManager alloc] initWithDatabaseNamed:dbName];
return dbManager;
}
Класс SQLiteManager
, я нашел здесь на Github.
Имея только изображения кода, вы пытаетесь подвергнуть сомнению код. Код примера не предоставляет 'DATABASE_NAME', поэтому код не может быть протестирован. – zaph
Xcode 6.3.1 не обеспечивает целевую установку iOS 5 развертывания, как вы это выбрали? –
http://stackoverflow.com/questions/7105127/xcode-4-target-deployment-target-vs-project-deployment-target –