NSTimer не срабатывает

Да хоть убей, я не могу понять, почему этот NSTimer не стреляет. вот весь код, который кажется релевантным (по крайней мере, для меня)

- (IBAction)connectClick:(id)sender
{
    if (connected)
    {
        NSLog(@"Disconnecting");
        [timer invalidate];
        timer = nil;
        connected = NO;
        [Connect setStringValue:@"Connect"];
        NSLog(@"Finished\n");
    }
    else
    {
        NSLog(@"Connecting");
        timer = [NSTimer timerWithTimeInterval:2.0 target:self selector:@selector(timerFireMethod:) userInfo:nil repeats:YES];
        //[timer fire]; tested this line. same results
        [Connect setStringValue:@"a"]; 
        connected = YES;
        NSLog(@"Finished\n");
    }
}

- (void)timerFireMethod:(NSTimer*)theTimer
{
    NSLog(@"Fireing event");
    //[self resetRequest];
    //[spinner startAnimation:nil];
    //[request startAsynchronous];
}

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

Все идеи приветствуются.

5
задан Adam Schiavone 19 February 2012 в 05:43
поделиться