バックグラウンド スレッドでかなり短いタスクを実行したいと考えています。ただし、このタスクは非常に機密性が高く、可能な限り信頼性が高くなければなりません。
私の最初のアイデアは、(これも短命の) フォアグラウンド サービスを使用することでした。サービスを開始し、別のスレッドでタスクを実行し、終了したら停止します。ロボスパイスが行っていることと同様に単純に聞こえますが、サービスのドキュメントにはスレッドの強制終了については何も記載されていません。サービス自体はスレッドではなく単なるオブジェクトであるため、特定のスレッドがサービスに属しており、強制終了されるべきではないことをシステムに「伝える」にはどうすればよいでしょうか?
- Service オブジェクトで Thread オブジェクトへの参照を保持するだけで十分ですか?
- HandlerThread を使用して、ルーパーへの参照を保持する必要がありますか? (IntentServiceのように)
- Thread クラスも拡張してサービスにバインドする必要がありますか? :)
誰かが私に道順を教えてくれることを願っています。ありがとう。