Quand Socket.Envoyer les données?

Question de débutant à nouveau: Sorte de suite à une question que j'avais posée il n'ya pas longtemps.

Je suis en train d'essayer de comprendre ce socket synchrone tutoriel http://msdn.microsoft.com/en-us/library/6y0e13d3.aspx, en particulier d'une seule ligne du code ci-dessous.

QUESTION:
Je veux m'assurer que je suis de comprendre le déroulement du programme, à droite . Quand n'gestionnaire.Recevoir(en octets) de retour? Est-il de retour et de stocker le nombre d'octets reçus dans int bytesRec**quand il "déborde" et a reçu plus de 1024bytes? **Et si c'est le cas, et cela peut paraître idiot, qu'advient-il si PLUS d'octets arriver comme c'est le stockage de l'1024 octets dans l' *données*variable et pas à l'écoute pour plus d'octets que peut-être d'arriver à ce moment-là? Ou devrais-je vous inquiétez pas à ce sujet et de les laisser .net prendre soin de cela?

Socket handler = listener.Accept();
data = null;

//An incoming connection needs to be processed.
while (true) {
    bytes = new byte[1024];
    int bytesRec = handler.Receive(bytes);
    //My question is WHEN does the following line
    //get to be executed
    data += Encoding.ASCII.GetString(bytes,0,bytesRec);
    if (data.IndexOf("<EOF>") > -1) {
        break;
    }
}

OriginalL'auteur iAteABug_And_iLiked_it | 2013-03-20