2

投稿の多くは、UIKit は完全にスレッド セーフではないと述べています。GCD の Apple ドキュメントでは、スレッド セーフでないのは DRAWING であることがわかります。したがって、次のようなコードは問題ありません。

ディスパッチ_非同期( ^{

//do some work
if(!self.window.rootViewController.presentedViewController && )
    [self.window.rootViewController class] == anotherClass)
  {
      dispatch_async(dispatch_get_main_queue(), ^{  //do some work  });
  }

});

4

2 に答える 2

0

この例では、値を変更していないので、はい、問題ありません。バックグラウンド スレッドから UI を更新することはできません。

于 2013-04-30T13:05:33.743 に答える