タイマーがスケジュールされているスレッドとは別のスレッドから setFireDate: を呼び出すことは、スレッドセーフと見なされますか? つまり、この関数を新しいスレッドで切り離します。
-(void)CFRunLoopTest {
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
timer = [NSTimer timerWithTimeInterval:1 target:self selector:@selector(timerFireMethod:) userInfo:nil repeats:YES];
runLoop = CFRunLoopGetCurrent();
CFRunLoopAddTimer(runLoop, (CFRunLoopTimerRef)timer, kCFRunLoopCommonModes);
CFRunLoopRun();
[pool drain];
}
[timer setFireDate:]
メインスレッドから呼び出してもいいですか? それを禁止するドキュメントには何も見つかりませんでした...