【问题标题】:Sharing the same application interface to a GUI and a debug shell与 GUI 和调试 shell 共享相同的应用程序界面
【发布时间】:2015-05-17 22:14:15
【问题描述】:

我正在用 C++11 开发一个跨平台应用程序(OS X、Linux、Windows),它应该提供一个自定义的调试外壳作为外部应用程序。

此调试外壳用于调用由应用程序的公共接口公开的方法。主要是它应该允许执行与应用程序 GUI 相同的操作。

调试 shell 和应用程序将在同一台机器上运行(远程访问将是一个优势,因此没有必要)。

我想知道我可以使用哪种方法来确保可移植性(不同的操作系统)、性能和代码重用(我想为 GUI 和调试 shell 共享相同的模型)。

我的第一个想法是使用gRPCGoogle Protocol Buffer 从GUI 和调试shell 访问应用程序界面,但我担心这样的解决方案会增加性能和设计开销。

您对设计和技术有什么建议吗?

【问题讨论】:

    标签: c++11 model-view-controller ipc rpc


    【解决方案1】:

    gRPC 应该适合这种用途。

    在 Mac 和 Linux 上,您可以使用 unix 域套接字来执行此操作。

    由于您也想移植到 Windows,因此最好绑定到 localhost,就像在 github 存储库中的 helloworld 示例中所做的那样:https://github.com/grpc/grpc/tree/master/examples/cpp/helloworld

    gRPC 在什么都没有发生的情况下使用非常少的 CPU,并且发出请求的序列化和网络开销将完全在交互使用延迟范围内(预计最坏的情况是 100 微秒)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-08-02
      • 2017-12-17
      • 2015-08-24
      • 2014-05-23
      • 1970-01-01
      • 2015-05-13
      • 2010-09-23
      相关资源
      最近更新 更多