Gui は にQt
あり、Api は にありboost
ます。Gui は、Api の上に置くことを意図しています。Api の機能の 1 つは、ネットワーク レベルのデータ管理を行い、特定の方法でデータを処理し、Gui と通信することです (つまり、Gui を Api の反対側にブリッジします)。GUI が Api をフリーズしないようにするために、別のスレッドで動作します。Gui と Api の両方が Qt を使用していた場合、Qt のクロススレッドsignal-slot
機構により、コミュニケーションはより簡単になります。Apiemits
とすぐに返され、その逆も同様です。したがって、明示的に指定しない限り、ブロックされるものはありません ( Qt::BlockingQueuedConnection
)。boost
で新しい Api をコーディングする必要があったため、しばらく前から使用していboost
ます。このメカニズムを実現するにはどうすればよいですかboost <--> Qt
コミュニケーション?API は header+static_library になるため、Gui と Api は単一の実行可能ファイルを生成します。最低限、Linux、Windows、および Mac をサポートする必要があります。
編集: : 申し訳ありませんが、経営陣とはすでに長い議論 (穏やかに言えば) がありましたが、最終的な結果は、Api でブーストを使用する必要があるということです。実際、Gui は Qt を使用していない可能性もあります。Gui を持っている人なら誰でも、相手側と通信するために Api にプラグインできるはずです (一種の Gui--API--kernel モデル)。そのため、どちらかの側で Qt を使用することなどに関する提案は、あまり役に立ちません。