0

たとえば、ABAddressBook を使用する場合、1 つのスレッドのみを使用する必要があります。

まあ、その1つのスレッドをメインスレッドにしたくありません。

ただし、他のすべてのスレッドは一意ではありません。たとえば、1 つの特別なスレッドのみを使用する NSOperationQueue を作成するにはどうすればよいですか?

4

2 に答える 2

1

これがあなたを助けるかもしれません。はい、メールスレッド以外のバックグラウンドスレッドでも操作を実行できます。

PerformSelectorInBackground:withObject:可能な解決策です。

dispatch_queue_t workQ = dispatch_queue_create("bgWorkQ", 0);
dispatch_async(workQ, ^{
    // This code is now running in a background thread.
    // Do all your loading here...

    });
});
dispatch_release(workQ) 

ここに NSOperation キューのサンプル チュートリアルへの リンクがあります ここにリンクの説明を入力してください

于 2013-10-04T08:43:20.710 に答える
1

ABAddressBookインスタンスを作成したのと同じキューにあるアドレス帳タイプを使用できABAddressBookます。メイン キューである必要はありません。キュー間で参照を渡したい場合はABAddressBook、宛先キューで作成された別のインスタンスにそれらをインポートする必要があります。これは比較的安価な操作です。

于 2013-10-04T08:44:03.980 に答える