我应该在什么时候使用以下代码关闭ObjectOutputStream?谢谢大家..。
try{
ObjectOutputStream output = new ObjectOutputStream(client.getOutputStream());
AnObject[] array = new AnObject[4];
for(int i = 0; i < array.length ; i++){
array[i] = new AnObject();
output.writeObject(array[i]);
}
output.flush();
output.close();
}
catch(IOException e){
processException();
}发布于 2014-03-23 07:16:12
当你用完它的时候。您应该在发送之后执行flush(),以便将添加到流的缓冲区中的所有数据强制传递到底层流(Object*Streams是客户端的OutputStream的包装器),即使流的缓冲区未满。
而且,不需要在关闭之前刷新,因为output.close()会调用flush()。
它看起来像是在发送数据后关闭它,所以除非你有更多的东西要通过你的客户端流发送,否则你会正常关闭。
https://stackoverflow.com/questions/22054390
复制相似问题