Paste the main code:
Private void ReceiveData (object cUserData)
{
User cUser = (User) cUserData;
// Disconnection flag
Bool closed = false;
Byte [] flagbyte = new byte [1];
While (! Closed)
{
Try
{
// Check whether the data received by the course exists
If (cUser. client. Available> 0)
{
Byte [] bytes = new byte [cUser. client. Available];
CUser. netStream. Read (bytes, 0, bytes. Length );
}
// Check whether the connection exists
If (cUser. client. Client. Poll (0, SelectMode. SelectRead ))
Closed = int. Equals (cUser. client. Client. Receive (flagbyte, SocketFlags. Peek), 0 );
}
Catch {
Closed = true;
System. Diagnostics. Debug. WriteLine ("disconnected! ");
CUser. Close ();
}
Thread. Sleep (1 );
}
}
Public class User
{
Public string cName {get; set ;}
Public TcpClient client {get; set ;}
Public NetworkStream netStream {get; set ;}
Public User (TcpClient _ client)
{
This. client = _ client;
This. netStream = client. GetStream ();
}
Public void Close ()
{
NetStream. Close ();
Client. Client. Close ();
Client. Close ();
}
}