Xcode / Instruments / Leaks: может ли он показывать красную линию там, где нет утечек? - PullRequest
0 голосов
/ 21 февраля 2012

То, что делает программа, просто выделяет объект, а затем освобождает его.

Я новичок в приборостроении, поэтому я не уверен, что правильно понял:

Instruments screenshot

Красная линия указывает на наличие утечки наТочка, где я выделяю этот объект.Но по деталям вы можете увидеть, что он был выпущен, а рефконт вернулся к 0. Так почему же во-первых красная линия, о чем она мне точно говорит?"обнаружено.Код из моего UIViewController:

- (void)viewDidLoad
{
    [super viewDidLoad];

    Plant *plant = [[Plant alloc] initWithWeight:3 withSpecies:@"carrot"];

    [plant release];
}

Ответы [ 2 ]

1 голос
/ 21 февраля 2012

если у вас @property типа Plant.

, тогда эту утечку можно объяснить с помощью

self.plant = someobject  //some object retained. /(using setter)

plant = someother object // previous value in self.plant leaked

-(void) dealloc
{
[plant release];
[super dealloc];
}
0 голосов
/ 21 февраля 2012

Я нашел это.

У класса был метод dealloc, который в конце не вызывал [super dealloc].

...