Objective-C延迟iOS 6调度中的一种方法\u获取\u当前\u队列已弃用

Objective-C延迟iOS 6调度中的一种方法\u获取\u当前\u队列已弃用,ios,objective-c,Ios,Objective C,我正在使用dispatch\u after()和dispatch\u get\u current\u queue()来延迟当前的方法。例如,延迟1秒: dispatch_after(dispatch_time(DISPATCH_TIME_NOW, 1 * NSEC_PER_SEC), dispatch_get_current_queue(), ^{ [self someMethod]; }); 由于iOS 6不推荐使用dispatch\u get\u current\u

我正在使用
dispatch\u after()
dispatch\u get\u current\u queue()
来延迟当前的方法。例如,延迟1秒:

dispatch_after(dispatch_time(DISPATCH_TIME_NOW, 1 * NSEC_PER_SEC), dispatch_get_current_queue(), ^{
        [self someMethod];
    });
由于iOS 6不推荐使用
dispatch\u get\u current\u queue()

类似的问题,但仍然使用不推荐的方式。谢谢

编辑:

从Peter Segerblom的回答中可以看出:

// Without updating UI
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, 1 * NSEC_PER_SEC), dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
    NSLog(@"Hello World");
});

// updating UI    
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, 1 * NSEC_PER_SEC), dispatch_get_main_queue(), ^{
    UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)];
    [imageView setBackgroundColor:[UIColor redColor]];
    [self.view addSubview:imageView];
});

干杯

我认为您应该使用
dispatch\u get\u global\u queue()
。我想应该也是这样。如果您只想延迟该方法,而不想在另一个que中运行,则可以使用
dispatch\u get\u main\u queue()
。请记住,如果您不在主队列中,则无法更新用户界面。

谢谢,
dispatch\u get\u global\u queue(dispatch\u queue\u PRIORITY\u DEFAULT,0)
dispatch\u get\u main\u queue()
都能很好地工作。