我正在编写一个简单的I / O类,以便在多人游戏中使用。实际上一切都很好,但我正在尝试找到一种方法来优化整体性能和数据包大小。 该课程为here
此外,几天前我找到了this类,看到它直接在位上工作。这样做会更好地改善我的课程吗?
感谢和抱歉英语不好。
编辑: 我正在使用TCP,数据包布局是标头(单字节),后跟熵数据(String,Int16,Int32,Int64,字节和字节数组)。 数据包最大大小为4kb。
答案 0 :(得分:0)
,数据包布局是
- 标题(单字节)
- 字符串
- 的Int16
- 的Int32
- 的Int64
- 字节
- 字节数组
如果您无法减小任何字段的大小,则无法对该包进行更优化。
4kb数据大约是32kbit / s,这意味着您可以在10mbit / s连接上将包传输到每秒约300个客户端。您是说每秒需要处理更多客户端吗?
优化应用程序的最佳方法是使用缓冲池,而不是为每个要发送的数据包创建新的缓冲区。
和往常一样:在你真正需要之前不要进行优化,因为你可能不得不牺牲可读性。