多くのリモート リソースの読み込みアクション、スケジュールされたランナブル、その他の OS イベント処理を行うアプリを入手しました。キャッシュされたスレッドを持つ単一のエグゼキュータ サービスを使用しています。最適なパフォーマンスとバッテリー使用量を得るには、いくつのスレッドを使用すればよいかわかりません。
知る方法はありますか?
多くのリモート リソースの読み込みアクション、スケジュールされたランナブル、その他の OS イベント処理を行うアプリを入手しました。キャッシュされたスレッドを持つ単一のエグゼキュータ サービスを使用しています。最適なパフォーマンスとバッテリー使用量を得るには、いくつのスレッドを使用すればよいかわかりません。
知る方法はありますか?
通常、バッテリーの使用に影響を与えるスレッドの数について心配する必要はありません。作業量が同じ場合 (CPU 命令に関して言えば)、1 つのスレッドで行う場合と 2 つのスレッドを使用して並行して行う場合とでは、バッテリーの消耗に大きな違いはないはずです。結果が速くなりますが、CPU はほぼ同じ数の命令を実行します。
パフォーマンスの向上に関しては、スレッドが CPU を 100% 消費する場合、コアの量よりも多くのスレッドを使用しても、パフォーマンスに違いはありません。実際には、スケジューリングのオーバーヘッドにより、パフォーマンスが少し低下します。
パフォーマンスを評価するためのメトリックを定義し、何が「最適」かを定義する必要があります。ソフトウェアが正確に何をしているのかわからないと言うのは本当に難しいです. 現時点でパフォーマンスやバッテリーに問題がない場合は、おそらく心配する必要はありません。
あなたの質問は非常に広範囲であるため、決定的な答えを得ることができません。