天天看點

NSTimer-定時器NSTimer-定時器

NSTimer-定時器

一、作用

  • 1.在指定的時間執行指定的任務
  • 2.每隔一段時間執行指定的任務

二、開啟定時任務

+ (NSTimer *)scheduledTimerWithTimeInterval:(NSTimeInterval)ti
    target:(id)aTarget
    selector:(SEL)aSelector
    userInfo:(id)userInfo
    repeats:(BOOL)yesOrNo;
    //每隔ti秒,調用一次aTarget的aSelector方法,yesOrNo決定了是否重複執行這個任務
           

三、停止定時任務

- (void)invalidate;
 // 通過invalidate方法可以停止定時器的工作,一旦定時器被停止了,就不能再次執行任務。隻能再建立一個新的定時器才能執行新的任務
           

四、解決定時器在主線程不工作的問題

NSTimer *timer = [NSTimer timerWithTimeInterval: target:self selector:@selector(next) userInfo:nil repeats:YES];
 [[NSRunLoop mainRunLoop] addTimer:timer forMode:NSRunLoopCommonModes];