私は現在、生成され、次のコマンドをキューから取り出して実行するか、少しスリープしてから再試行するスレッドを持っています。ただし、キューにコマンドがなく、アプリケーションにアクティブなアクティビティがない場合は実行したくありません。
私の質問は、どのルートを調査する必要があるか、他の人がどのルートをたどった可能性があるかということです。
- コマンドが入ったときにのみ処理するようにサービスをリファクタリングし、スレッドを生成しない
- スレッドに 3 番目の条件がある (!activityCount = 0 の場合はスレッドを停止する)
または、私はそれが間違っていて、それにバインドされたアクティビティがなくなった場合、Android はスレッドを自動的に終了できますか?