c#networkstream readasync()在Windows Mobile 6.5上断开连接后冻结

时间:2014-01-09 21:04:38

标签: c# compact-framework tcpclient asyncsocket

我遇到了网络流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; 
    }
}

你知道可能是什么问题吗?

0 个答案:

没有答案