gpt4 book ai didi

Java <-> C 桥

转载 作者:IT王子 更新时间:2023-10-29 00:20:34 27 4
gpt4 key购买 nike

我正在开发一个应用程序,该应用程序具有托管在 Glassfish 服务器上的 Java Web 界面和作为 Linux 守护进程实现的 C 内核。

我现在最大的问题是如何进行远程过程调用。我需要双向调用函数和方法。这些是我能想到的可能的解决方案:

  1. 使用 Java Native Interface 和网络套接字实现 RPC。
  2. D-Bus - 据我所知,DBus 可用于 Java 和 C 之间的 RPC。

我想使用最基本的方式,不使用外部库或框架。是否可以仅使用套接字直接在 Java 和 C 之间调用函数/方法?我使用的操作系统是 Centos。

有没有更优雅的方式来连接这两种语言?

最佳答案

没有外部库,只剩下套接字。但我会将 DBus 归类为外部库,对吗?

如果C程序可以使用套接字,就不需要Java Native Interface。 Java代码可以open sockets from Java ,调用 C 代码监听的套接字。

如果您允许 DBus,也许您应该考虑过多的网络和 RPC 协议(protocol),它们具有 C 和 Java 的库。 (同样,无需使用 JNI。)

采用 DBus 方式,查看 Java documentationtutorial .

关于Java <-> C 桥,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9157432/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com