我遇到了网络流readasync()方法的问题。通常,当我在vs2012中创建tcpclient并与服务器连接时,在断开客户端连接后,它会抛出“连接已关闭”异常。然而,当我使用motorola扫描仪连接(在Windows Mobile 6.5上运行;应用程序是使用vs 2008使用紧凑型框架3.5编译)然后关闭tcpclient时,服务器就会冻结。
我希望它会抛出异常,但是当我使用紧凑型框架3.5时,它就不会。
这是它被卡住的行(在try
内):
while(condition)
{
try
{
_amountRead = await _stream.ReadAsync(
_receiveBuffer,
_amountRead,
_amountExpected);
}
catch (Exception e)
{
_ex.Report(e, "stream read async");
break;
}
}
你知道可能是什么问题吗?