凡是用BufferedWriter 输出流将数据流写入到socket输出流。发给服务端。都会用到缓存区
BufferedWriter bufOut =
new BufferedWriter(new OutputStreamWriter(s.getOutputStream())); //把信息读取到缓存区,所以下面需要刷新
Java的缓存机制是通过JVM(Java虚拟机)提供的运行时缓存来实现的,由于JVM是不跨平台的(Java的跨平台正是通过JVM的不跨平台来实现的),
所以JVM的缓存机制没有实现本地临时存储,因此你找不到所谓Java的缓存文件夹。,到最后jvm会自动回收这些缓存垃圾
所以在下面要进行刷新操作
// bufOut.flush(); //刷新缓存区信息,刷新后会把信息发送到服务端
PrintWriter 流既能接收字节流又能接收字符流,而且还能刷新缓冲区,所以建议你最好用PrintWriter
|