8

Xcode は、デバッグ ナビゲーターにスレッドを表示します。

Thread 1Thread 2、 などの番号が付けられています。

私は常にスレッド 1 にいることに気付きました。それがメイン UI スレッドであるというのは正しい仮定ですか? 私は libs/SDK を使用しておりFacebookAFNetworkingそれらにはコールバックとデリゲートがあります。しかし、スレッド セーフが常に適切に文書化されているとは限りません。

4

1 に答える 1

7

どちらかは覚えていませんが、WWDC ビデオの 1 つ (2011 年からだと思います) で、エンジニアが、UIKit の内部ではスレッド 1 が UI であると想定されていると述べているのを聞きました。

はい、それは「単純な」ベストプラクティスではありません。具体的な技術的な依存関係があると思います。

特定のドキュメントに関する限り、「公式」の声明はすぐには見つかりません。しかし、それはそれよりもさらに根本的なものだからだと思います。たとえば、この種のメイン スレッドの役割についてのさりげない言及はいたるところにあります ( iOS アプリ プログラミング ガイド(iOS 101 など) から引用) 。

メイン スレッドは、アプリがタッチ イベントやその他のユーザー入力を処理する場所です。

于 2013-03-12T23:18:51.273 に答える