延迟后取消完成块

时间:2017-03-14 10:41:29

标签: ios objective-c swift xcode

有块发现某些CBPeripheral(CoreBluetooth)的CBS服务。但是经过一段时间后如何取消这个块?

例如,如果10秒后没有发现CBServices,则必须取消阻止。

2 个答案:

答案 0 :(得分:0)

您可以使用performSelector进行延迟操作

[self performSelector:@selector(cancelAction:) withObject:self afterDelay:10];

-(void)cancelAction:(id)sender {

    //What ever you want try here

}

答案 1 :(得分:0)

只需调用CBCentralManager的stopScan函数。

[self performSelector:@selector(stopScan:) withObject:self afterDelay:10];

- (void)stopScan:(id)sender {
    [self.centralManager stopScan];
}