Одной из возможностей было бы использование Grand Central Dispatch, а именно dispatch_after()
:
double delayInSeconds = 2.0;
dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, delayInSeconds * NSEC_PER_SEC);
dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
dispatch_after(popTime, queue, ^{
...
});
Вместо dispatch_get_global_queue()
вы, конечно, можете также создать свою собственную очередь отправки или использовать основную очередь с dispatch_get_main_queue()
.