Правильно ли освобождать временный объект после установки себя?

Какой из следующих сценариев является правильной практикой кодирования, учитывая, что player (неатомарный, сохраняет )и синтезируется с помощью player = _player.

Сценарий А

MPMoviePlayerController *mp = [[MPMoviePlayerController alloc] initWithContentURL:movieURL];
        self.player = mp;
        [mp release];

Сценарий Б

MPMoviePlayerController *mp = [[MPMoviePlayerController alloc] initWithContentURL:movieURL];
    self.player = mp;

До этого момента я использовал сценарий A в качестве общей практики, но я думаю, что это может вызывать утечку памяти в моем коде.

Спасибо за любую помощь.

РЕДАКТИРОВАТЬ 1:

И то же самое относится к таймерам, они доставляют мне настоящие хлопоты. Если я использую приведенный ниже код, это правильно? Если timerMap также является неатомарным (, сохраните )и используйте timerMap = _timerMap;

self.timerMap = [[NSTimer scheduledTimerWithTimeInterval:fps target:self selector:@selector(updateAnimationTimer) userInfo:nil repeats:YES] autorelease];

И при выпуске можно ли просто аннулировать, или его следует аннулировать, а затем выпустить?

0
задан Elliott D'Alvarez 23 July 2012 в 10:21
поделиться