我正在開發一個應用程序,我想在使用dispatch_async
的單獨隊列中調用方法。我想在一定的時間間隔後重復調用該方法。但該方法沒有被調用。未用dispatch_async調用方法並重復NSTimer
我不知道什麼是錯的。這裏是我的代碼:
dispatch_async(NotificationQueue, ^{
NSLog(@"inside queue");
timer = [NSTimer scheduledTimerWithTimeInterval: 20.0
target: self
selector: @selector(gettingNotification)
userInfo: nil
repeats: YES];
dispatch_async(dispatch_get_main_queue(), ^{
// Add code here to update the UI/send notifications based on the
// results of the background processing
});
});
-(void)gettingNotification {
NSLog(@"calling method ");
}
只需將上述內容添加到視圖中,在vc中加載不會生成任何控制檯輸出,缺少什麼? –
@DavidKarlsson'timer'變量實際上必須是類屬性(或ivar)。與'NSTiner'不同,如果超出範圍,則調度計時器將被取消並解除分配。 – Rob