我们可以执行类似performBlockAndWait的操作:没有托管对象上下文

时间:2013-04-23 00:20:45

标签: objective-c xcode4.5

说我在后台线程中。假设我想在主线程上执行某些操作并等到它完成。

我该怎么做?

我想我可以做到

   [[NSOperationQueue new] addOperationWithBlock:^{
        [[NSOperationQueue mainQueue]addOperationWithBlock:^{
            //Do something on main queue
            [[NSOperationQueue new] addOperationWithBlock:^{
                //Do something after finish
            }];
        }];
    }];

我想做点什么

//do stuff
[[NSOperationQueue mainQueue]addOperationWithBlockAndWaitTillFinished:^{
        //Do something on main queue

 }];
 //Do something after finish

1 个答案:

答案 0 :(得分:0)

我认为您正在寻找的是dispatch_sync它就像dispatch_async但是该块是同步执行的,

请确保不要在与当前队列相同的队列中运行该块,否则您将陷入僵局。