Cannot close stream until all bytes are written错误怎么处理。
static void ProcessHttpClient(object obj)//请求处理
{
HttpListenerContext context = obj as HttpListenerContext;
HttpListenerRequest request = context.Request;
HttpListenerResponse response = context.Response;
try
{
StreamReader streamReader = new StreamReader(request.InputStream);
string Instr = streamReader.ReadToEnd();
streamReader.Close();
request.InputStream.Close();
byte[] buffer = System.Text.Encoding.UTF8.GetBytes("");
response.ContentType = "POST";
response.ContentLength64 = buffer.Length;
response.OutputStream.Write(buffer, 0, buffer.Length);
}
catch
{}
finally
{
response.OutputStream.Close();
response.Close();
}
}
在上面的代码中,如果response.OutputStream.Write时出错,
就会执行finally中的 response.OutputStream.Close();
但是出现Cannot close stream until all bytes are written,怎么避免这种错误。