J'ai un programme de réseau client/serveur C# que j'ai écrit en utilisant les classes TCPListener et TCPClient de . Le serveur lit tout du client (de petites quantités de xml) juste bien jusqu'à ce que j'essaie d'envoyer un gros fichier au client.Problème de socket newbie .NET
J'utilise des fonctions de flux pour à la fois client et serveur avec des fonctions de socket non bloquantes. Lorsque je fais un socket.SendFile ("nom de fichier") de nouveau au client, le fichier obtient coupé - J'ai réglé la taille du tampon de réception sur le client à passé 10000 mais il est encore coupé autour de 25k et la communication entre le client et le serveur n'est pas fiable après.
Ma question de base est ce qui se passe si des données sont en quelque sorte laissées dans le tuyau? c'est-à-dire lu par le socket suivant.Lire ... Chaque appel Send nécessite-t-il exactement un et un seul Read? Peut-être que je ne donne pas assez de temps au client pour lire le fichier mais les deux sur la même machine et j'ai essayé de dormir pendant quelques secondes dans divers endroits sans succès.
Line- les pauses rendent le texte plus facile à lire. –
Pouvez-vous fournir le code pour le client et le serveur? – Ikaso
Si vous le pouvez, postez du code. Il est vraiment difficile de répondre à votre question sans voir ce que vous avez mis en place. – driis