说我有一个TcpClient,我接受来自TcpServer在C#中,出于某种原因它保持默认阻止。有没有其他的力量可以改变套接字阻塞的设置?就像说它受远程连接的影响?c#套接字阻止
我知道我设置了阻塞来恢复一些构建,但我改变了它,甚至引入了TcpClient而不是直接套接字。我没有特别改变阻塞为真,我只是评论阻塞=错误。这种情况可能与端点一直存在吗?
我不知道,但似乎有一天,我的套接字在没有任何真正的代码变化的情况下变得不稳固。
public void GetAcceptedSocket(TcpClient s)
{
try
{
sock = s;
IPEndPoint remoteIpEndPoint = s.Client.RemoteEndPoint as IPEndPoint;
strHost = remoteIpEndPoint.Address.ToString();
intPort = remoteIpEndPoint.Port;
ipEnd = remoteIpEndPoint;
sock.ReceiveTimeout = 10000;
boolConnected = true;
intLastPing = 0;
LastPingSent = DateTime.Now;
LastPingRecieved = DateTime.Now;
handleConnect(strHost, intPort);
oThread = new Thread(new ThreadStart(this.run));
oThread.Start();
}
catch (Exception e)
{
handleError(e, "Connect method: " + e.Message);
}
}
嘿,我问了一个主持人,他们让我投我自己的帐篷。所以不要低估我。 – 2011-12-27 01:26:39