1. 程式人生 > >oc延時執行

oc延時執行

/**延時執行*/
-(void)delay{
    //第一種
    [self performSelector:@selector(start) withObject:nil afterDelay:2.0];
    
    //第二種 可以重複呼叫
    [NSTimer scheduledTimerWithTimeInterval:2.0 target:self selector:@selector(start) userInfo:nil repeats:YES];
    
    /**第三種  可以在主執行緒 或者自執行緒中執行
     第一個引數 從現在開始計時
     第二個引數 延時的時間 單位納秒
     第三個引數佇列
     
     */
    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t) (2.0*NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
        
    });
    
}