gpt4 book ai didi

java - java套接字可以在不压垮接收套接字的情况下进行多次连续写入吗?

转载 作者:太空宇宙 更新时间:2023-11-04 11:50:00 26 4
gpt4 key购买 nike

我对套接字编程很陌生。我注意到 BufferedReader.readln() 会阻塞,直到有东西可以从另一端读取,但 PrintWriter.println() 只会像忍者星星一样抛出数据。

我在互联网上看到的大多数套接字示例都是简单的读写程序。

如果我的程序让服务器多次连续调用 println() 来发送不同的字符串,并且客户端套接字需要读取每一行并在每次读取之间处理字符串,那么服务器是否有可能用数据淹没客户端?某些数据最终会丢失吗?

是否必须在我的程序中设置“响应”类型的逻辑,即服务器发送数据并等待客户端“继续”然后再继续?

这是否因所使用的 InputStream/OutputStream 实现(如数据或对象输入/输出流)而有所不同?

我不知道这是否有影响,但这些是我在 Android 应用程序中运行的程序。

最佳答案

这一切都由 TCP 规范为您处理。解释起来确实很复杂,但是 TCP 中有一些算法可以处理发送和接收窗口大小、指数退避和恢复、接收数据的确认等。除非您正在处理诸如实时视频流之类的延迟问题的问题,否则您无需担心它。

关于java - java套接字可以在不压垮接收套接字的情况下进行多次连续写入吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41939703/

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