【发布时间】:2017-01-18 10:40:51
【问题描述】:
我正在使用 java nio 创建我的游戏服务器,但是我找不到如何使用 socketchannel 或在 c# 中发送数据,我该如何解决这个问题。只使用 i/o 吗?
【问题讨论】:
-
假设您想同步执行此操作,MSDN 上有一个关于如何使用 Sockets 进行同步通信的示例:msdn.microsoft.com/en-us/library/kb5kfec7(v=vs.110).aspx
-
我认为 nio 不使用流类型但它没有任何关系?
-
只要你以两种语言都可以理解的格式发送你的有效载荷,如果 java 使用 NIO 和 C# 不同的东西是无关紧要的。要点是:您可能通过 TCP 很好地发送字节 - 对吧?所以你可以使用你喜欢的方法来发送/接收字节。你只需要有一个体面的协议。无论是您自己发明的字节协议,还是 JSON、Xml 等标准,都能够序列化/反序列化您的有效负载。
-
说到游戏服务器,您应该考虑所需的吞吐量和可靠性。例如,如果您喜欢第一人称射击游戏,您可能会喜欢使用带有非常简单协议的 UDP,因为每个单独的数据包到达并不重要,但它们应该以非常高的频率交换。跨度>
-
@Fildor 非常感谢!!我想知道我明白这是什么意思。我会试试的
标签: java c# sockets networking socketchannel