是否可以在本机C++模块之间共享数据

Is it possible to share data between native C++ modules?

本文关键字:模块 之间 共享 数据 C++ 本机 是否      更新时间:2023-10-16

我有一个包含 2 个本机 c++ 模块的 Android 项目。模块 A 和模块 B。现在,模块 A 是一个记录接口和一个包装器,用于通过 JNI 调用与 Java 模块进行通信,模块 B 处理模块 A 收集的数据。模块 A 已经将模块 B 列为依赖项,但似乎仍然无法找到在 2 之间建立数据共享的方法。我看到的所有示例都是与本机通信Java,但在同一项目中没有2个本机模块。如果有可能或有人有任何想法,任何意见将不胜感激。

"是否可以在本机C++模块之间共享数据?" - 是的,当然。

你有很多选择。以下是其中的一些

  • 使用全局变量共享数据(通常不是最好的主意(

  • 使用共享内存共享数据

  • 使用文件共享数据

  • 使用套接字
  • (Unix域套接字,TCP套接字等(共享数据

有很多方法可以共享数据。哪一个合适取决于您要做什么。

您可以使用套接字,每个子模块侦听数据并将其推送到特定端口。这是最基本的方法,也许有更高层次的解决方案。