私は自分の目的のために Debug.startMethodTracing を使用し、出力ファイルで見ることができます (IPC は使用しません):
8 Binder Thread #2
7 Binder Thread #1
それは何のために?
私は自分の目的のために Debug.startMethodTracing を使用し、出力ファイルで見ることができます (IPC は使用しません):
8 Binder Thread #2
7 Binder Thread #1
それは何のために?
バインダースレッドは、サービスの別のスレッドを表します。バインダーは、プロセス間通信を提供するメカニズムです。
例を考えてみましょう。サービスプロセスBがあると想像してください(写真を参照)。また、このサービスBと通信するアプリケーションがいくつかあります(このアプリケーションの1つは、たとえばプロセスAです)。したがって、1つのサービスBは、異なるアプリケーションに同時に異なる結果を提供する必要があります。したがって、さまざまなアプリケーションに対してサービスBのレプリカをいくつか実行する必要があります。Androidは、プロセスBのさまざまなスレッドでこれらのレプリカを実行します。これらのスレッドは「バインダースレッド#N」と呼ばれます。
ここで写真を撮りました。ここでは、バインダーとは何かを読むこともできます。
「バインダーは、プロセス間通信を提供するメカニズムです。」
Binder は、必ずしも単なる IPC メカニズムではありません。
すべてのクロス コンポーネント トラフィックは Binder から抽象化されます。たとえば、ローカル インテントはバインダーの抽象化です。