これは、Microsoftソケットチュートリアルhttp://msdn.microsoft.com/en-us/library/6y0e13d3.aspxの例です。
私は少し混乱しています。最初のwhile(true)無限ループの後に、4行下の2番目のループが続きますが、使用するbreakステートメントは1つだけです。2番目のwhileループでbreakを使用すると、最初のwhileループを続行する必要があります...いいえ? http://msdn.microsoft.com/en-us/library/6y0e13d3.aspx
while (true) {
Console.WriteLine("Waiting for a connection...");
// Program is suspended while waiting for an incoming connection.
Socket handler = listener.Accept();
data = null;
// An incoming connection needs to be processed.
while (true) {
bytes = new byte[1024];
int bytesRec = handler.Receive(bytes);
data += Encoding.ASCII.GetString(bytes,0,bytesRec);
if (data.IndexOf("<EOF>") > -1) {
break;
}
}
}