performSelectorInBackground
は、呼び出しごとに新しいスレッドを生成するか、すべての呼び出し(おそらくキューに入れられている)に対してスレッド(メインスレッドではない)を共有していますか?performSelectorInBackgroundは呼び出しごとに新しいスレッドを生成しますか?
答えて
新しいスレッドが後のiOSおよびMac OS X v10.5以降ではスレッド
をスポーンするNSObjectのを使用しThreading Programming Guide
から
-performSelectorInBackground:withObject:
に各呼び出しで作成され、すべてのオブジェクトは新しいスレッドを生成し、そのメソッドを使用してメソッドの1つを実行します。 performSelectorInBackground:withObject:メソッドは、新しいデタッチされたスレッドを作成し、指定されたメソッドを新しいスレッドのエントリポイントとして使用します。たとえば、変数myObjで表されるオブジェクトがあり、そのオブジェクトにdoSomethingというメソッドがあり、これをバックグラウンドスレッドで実行する場合は、次のコードを使用します。
[myObj performSelectorInBackground:@selector(doSomething) withObject:nil];
このメソッドを呼び出す効果は、現在のオブジェクト、セレクタ、およびパラメータオブジェクトをパラメータとしてNSThreadのdetachNewThreadSelector:toTarget:withObject:メソッドを呼び出した場合と同じです。新しいスレッドは、デフォルト構成を使用してすぐに生成され、実行を開始します。セレクタの内部では、スレッドと同じようにスレッドを構成する必要があります。たとえば、自動解放プール(ガベージコレクションを使用していない場合)を設定し、スレッドの実行ループを使用するように設定する必要があります。新しいスレッドのコンフィグレーション方法については、「スレッド属性のコンフィグレーション」を参照してください。
- 1. 非同期呼び出しは常に新しいスレッドを作成/呼び出しますか?
- 2. 新しいスレッドからメソッドを呼び出すC
- 3. EDMX新しい列がToList()呼び出しでエラーを生成します
- 4. 新しいリクエストごとに新しいスレッドを作成するWCFサービス
- 5. ナノ秒ごとに関数を呼び出しますか?
- 6. サービスインタフェースでGetTypeを呼び出すと、呼び出しが発生しますか?
- 7. 新しいハンドラ(Looper.getMainLooper())を呼び出すたびに新しいインスタンスを作成しますか?
- 8. Javaの新しいスレッドの呼び出しスタック情報
- 9. timer_create()の呼び出し時の新しいスレッド
- 10. Linq2Sqlがsproc呼び出しごとに新しい接続を作成し、それを開いたままにしているのはなぜですか?
- 11. NSOperationは新しいスレッドを生成しませんか?
- 12. 新しいスレッドを内部で呼び出すのがコンストラクタ
- 13. 新しいスレッドでCUDA対応ライブラリを呼び出す
- 14. C#新しいスレッドでメソッドを呼び出す
- 15. 新しいスレッドでメソッドを呼び出す簡単な方法
- 16. アングルサービスはその呼び出しごとにリセットされます
- 17. スレッドごとに関数を一度呼び出す方法
- 18. djangoはAPI呼び出しのアクセストークンを生成します
- 19. fireとforgetタスクから例外が発生するのは、呼び出しスレッドで発生しますか?
- 20. 新しいAJAX呼び出しごとに前の呼び出しより少し時間がかかります
- 21. WCFサービスの呼び出しごと
- 22. 同じスレッドから作成されたスレッドを呼び出しても、スレッドに呼び出すことはできません。
- 23. hellofromというパッケージを作成します。 Proc_1はProc_2、Proc_2を呼び出し、Proc_3を呼び出します。
- 24. Firefox Extension - ページごとに複数のXMLHttpRequest呼び出しを呼び出す
- 25. 大きなループのたびに新しいスレッドを呼び出す
- 26. 複数のスレッドでRegisterClassObjectsとResumeClassObjectsを呼び出しますか?
- 27. すべてのAPI呼び出しで新しいJWTを生成
- 28. 別のスレッドでも呼び出し/呼び出し
- 29. 30秒ごとにデータベースを呼び出します
- 30. Sails.jsは各呼び出しで新しいセッションを作成します
通常、公式ドキュメントが非常に役に立ちます。ありがとうジョナ。 –