我应该何时使用以下代码关闭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();
}
答案 0 :(得分:0)
每当你使用它时。您应该flush()
发送之后,强制通过添加到流的缓冲区中的所有数据到您的客户端Object*Streams
的基础流(OutputStream
包装器),即使流的缓冲区不是'满了。
此外,在结束前无需刷新,因为output.close()
会调用flush()
。
看起来你在发送数据后关闭了它,所以除非你有更多的东西通过你的客户端流发送,否则你正在关闭。