java - 网络库兼容 C 和 Java

标签 java android c++ networking enet

我要开发一款具有多人游戏功能的 Android 小游戏。我已经使用 eNet 库在 C++ 中制作了一个服务器框架,我想使用这个框架来制作服务器。

那么,是否有像 eNet 这样兼容 Java 和 C++ 的网络库?我知道存在 jEnet(但是 Java-enet-wrapper (https://github.com/csm/java-enet-wrapper) 已经过时了),它还不成熟。

最佳答案

查看 https://github.com/julienr/libenet-android .

在您的情况下,ENet 比 UDT 更可取,因为 UDT 可能是处理器密集型的,而游戏服务至少希望有很多连接。区别在于UDT实现拥塞控制,对CPU的要求比较高。 UDT 很棒,但更多地设计用于远距离的大型、高带宽传输,而不是游戏中所需的小型、高延迟事务。

另请注意,主流拥塞控制算法不适用于小事务。它们通过监视事务中每个数据包的 RTT 和/或监视事务中的数据包丢失率来工作,当每个事务平均只有 1-2 个数据包时,这是没有实际意义的。拥塞控制协议(protocol)的额外要求将影响延迟,即使如果传输保持较小规模,拥塞控制本身也不太可能参与。

关于java - 网络库兼容 C 和 Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12414217/

相关文章:

java - 使用 JDialog 中的 JFrame 填充 JList、类属性

javascript - 在 Chrome devtools 中查看页面加载时发生的 Android webview 网络请求

c++ - 动态转换引用

c++ - Qt 5.1 应用程序无法在 QtCreator 之外的 Windows 8 上运行,运行时错误

java - Android 字符串资源上标

java - 线程中的异常 "main"java.lang.NullPointerException : While trying to the run the jar file

java - 扫描仪上的数字类型

android autolink 太激进了

android - 无法将 Android ADT 安装到 Eclipse Helios (Windows)

c++ - 主机和设备函数 makefile 编译错误