gpt4 book ai didi

java - 如何获取DataInputStream中的数据量? - java

转载 作者:行者123 更新时间:2023-12-01 11:52:49 27 4
gpt4 key购买 nike

我目前正在编写我正在开发的多人游戏的服务器端。我需要知道服务器套接字上正在接收多少数据,以便我可以循环遍历所有数据。例如,如果我执行 writeUTF() 两次,我将如何循环执行这些操作而不会出现异常?起初,我尝试使用 EOFException 进行 try catch。但你似乎无法捕获那些。那么,如何获取 DataInputStream 中接收到的数据量?谢谢! -特伦特

附注如果您需要代码,请告诉我,我会将其放在这里!

最佳答案

从套接字读取数据的调用将阻塞,直到收到数据为止。没有办法知道流中有多少数据。您有多种方法可以解决该问题,以下是一些建议:

  • 在您的通信协议(protocol)中,包含长度字段或一些指示长度的命令代码。

  • 使用异步读写或使用专用线程来处理通信。

  • 在使用键盘和编写代码之前,请考虑一下您的应用架构、其组件、它们的功能以及它们之间的相互关系。

关于java - 如何获取DataInputStream中的数据量? - java ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28666150/

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