Qtのプロセス間通信

QTは、プロセス間通信方法の4種類が用意されています。

  1. 共有メモリ(共有メモリ)の相互作用:これはQtのサポートは、プロセスの相互作用によって提供されている間、様々なプラットフォームです。
  2. TCP / IP:基本的な考え方は、ネットワークプロトコルを介して相互作用どちらも、クライアントとして、上記の二つのプロセスサーバと同じマシンです。同じマシン上の2つのプロセスに加えて、通常のC / Sプログラムとの相互作用のこの種類は異なっていません。Qtは、このQNetworkAccessManagerがサポートされています。
  3. D-バス:freedesktop組織は、低コスト、低遅延のIPCの実装を開発しました。Qtはレベルを処理する信号スロット機構を拡張するために、QtDBusモジュールを提供する(我々が上記強調表示された「正常」信号スロット機構は、IPCを達成することができないれる)、開発者が応答した他のプロセスの溝機能により、プロセスに信号を送信することができ信号。

  

D_BUSは、低コスト、低レイテンシプロセス間通信機構です。QtはQtDBusモジュールを提供し、QtDBusモジュールは、D-使用するバスプロトコル、プロセスレベルの信号スロット機構(シグナルとスロット)に延び、開発者は信号処理を発行することができるように、他のプロセスが定義されてもよいし、他のプロセスに溝応答します信号が出射されます。

    D -BUSはGPL放出下でライセンスfreedesktop.orgプロジェクトによって提供される高レベルのプロセス間通信メカニズムです。D-バス主な目的は、Linuxデスクトップ環境での処理のための通信を提供することであるが、Linuxデスクトップ環境とLinuxカーネルは、イベント配信プロセスにメッセージとしてすることができます。
メインバスD-BUSの確率、登録プロセスは、カーネル・イベント登録処理は、例えば、コンピュータまたは発行されたshutdownコマンドを待機ネットワーク状態遷移後の応答を待って、バスを介してメッセージを受信または送信してもよいです。
現在、D-バスは、ほとんどのLinuxディストリビューションで使用されてきた、D-使用することができ、開発者のバスは、複雑なプロセス間通信のさまざまなタスクを達成します。 D -BUSは、その機能は、プロセス間通信のすべてのニーズをカバーすることであるメッセージ・バス・システムであり、そしていくつかの特別な目的を有しています。D- :バスを含む、通信システムとの間の3層プロセスである 界面層:界面層がライブラリのlibdbusによって提供され、プロセスは、ライブラリのlibdbus Dによって使用されてもよい - バスの能力。 レイヤバス:バス層は、実際にはDで構成されている - バスバスデーモンを提供します。システムは、Linux、LinuxカーネルメッセージングおよびLinuxデスクトップ環境を含むプロセス間のメッセージのルーティングと配信料を、実行を開始するとき。 レイヤパッケージ:特定のアプリケーションフレームワークに基づく層のラッパーライブラリのパッケージングシリーズ。 QTカプセル化層でDBUSはのlibdbus DBUSのために使用されている - 。Qtが サービス上のオブジェクトを表示するには、バスDBUS D使用できる - 足「とqdbusviewerの DBUSを使用することができる送信される信号メッセージフローを表示する、-sendをDBUS上で使用することができますdbusのモニター

 

4.QCOP(Qtの通信プロトコル):Qtの内部QCOPは、同一または異なる内部プロセス間で異なるクライアントのアドレス空間との間の通信に使用される通信プロトコルです。現時点では、このメカニズムは、組込みLinuxのバージョン用のQtをのみ使用されます。

 

http://www.360doc.com/content/18/0118/20/52164085_723170318.shtml

 

おすすめ

転載: www.cnblogs.com/xiangtingshen/p/11068134.html