TcpClient bloquant qui ne bloque pas
Bonjour,
J'essaye d'envoyer un fichier en utilisant un buffer de 32 008 octets.
Malgré que la proprieté Blocking de mon socket est bien à True, il arrive souvent que je ne reçois pas le nombre d'octets désiré.
Ce probleme diminue si je fais Thread.sleep(100); juste avant le read ou bien si je diminue la taille du buffer.
Voici les bouts de code intérressant:
Code:
1 2
|
public const int BufferSize = 32008; |
Code:
1 2 3 4 5
|
TcpClient client = new TcpClient(monPeer.ipaddress, monPeer.port);
monPeer.monTcpClient = client;
monPeer.monTcpClient.ReceiveBufferSize = BufferSize;
monPeer.monTcpClient.Client.Blocking = true; |
Code:
1 2 3 4 5 6
|
int retour = client.GetStream().Read(bufferFichier, 0, BufferSize);
if (BufferSize != retour)
{
} |
Merci