很诡异的问题。请看下面的tcp异步连接代码 =================================
TcpClient client = new TcpClient();
client.BeginConnect(myIPaddress, port, new AsyncCallback(ConnectCallback), client);
public void ConnectCallback (IAsyncResult result)
{
TcpClient client = (TcpClient)result.AsyncState;
if(client.Connected)
{
//todo something
}
}
进入回调后在远程的主机根本没有打开情况下,client.Connected的值是true。 在远程主机端口没开放的情况下,我把tcp连接这个模块单拿出来测试,进入回调后connected属性值是正常的false.难道是我主程序调用的问题吗?但我的程序怎么会影响到tcp连接呢?我要连接的远程端口明明没有开放。我也用netstat -a 命令查看了。求指教!非常非常困惑~如能解答不胜感激。有没有c#网络编程方面的好书呢?如果能推荐非常感激!