NSTimer не останавливается на недействительности

Я добавляю таймер вот так

tim=[NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(repeatTim) userInfo:nil repeats:YES];
[[NSRunLoop mainRunLoop] addTimer:tim forMode:NSDefaultRunLoopMode];

Тим это свойство NSTimer моего класса.

Затем я останавливаю это на нажатие кнопки, как

[[fbt tim] invalidate];
[fbt setTim:nil];

FBT это экземпляр моего класса.

если я вызываю только validate, то он не останавливается, но если я установил его на nil, я получу EXC_BREAKPOINT

здесь код метода repeatTim в селекторе

AppDelegate *appDelegate = [[UIApplication sharedApplication]delegate];
[appDelegate.wbv stringByEvaluatingJavaScriptFromString:[NSString stringWithFormat:@"intal()"]];

Я пытался позвонитьв этом а такжеаннулировать в

dispatch_async(dispatch_get_main_queue(), ^{})

это также не останавливает таймер.

Ответы на вопрос(2)

Ваш ответ на вопрос