我正在使用apache.commons.net.telnet
。
我有char[]数组
。我正在调用 TelnetClient.getOutputStream().write(array[i])。
我预计我的数据将一次发送一个字符,但 Wireshark 显示第一个字符单独发送,其余字符一起发送。 为什么会出现这种情况?如何逐字符发送数据?
最佳答案
好的。这是正确的答案。要尽快发送数据,请执行以下操作:
在输出流上调用 setTcpNoDelay(true)。
使用整个数组调用 write。您应该每次写入一个字节。同时写入整个数组会快得多。
写入后调用flush()。
这是发送数据最快的方式,也是产生最少延迟的方式。也就是说:一次发送一个字节并不能确保服务器更快地接收它们。
一次发送一个字节的数据会减慢速度,而不是加快速度。
关于java - 如何一次向 Telnet OutputStream 写入一个字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10045079/