Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Problème de lecture du flux NetworkStream

1 réponse
Avatar
Vincent
Bonjour,



Je souhaite récuperer des données via un NetworkStream. Mon problème est
que par moment le flux que je reçois n'est pas complet, et donc je refais un
Read alors qu'il n'y a plus de données à recevoir car tout a été envoyé par
le serveur. Je ne peux pas faire un DataAvailable parce que parfois je dois
attendre quelques secondes avant de recevoir mes données.

Je voudrais donc utiliser un timer pour qu'après x secondes, la lecture
s'arrete. J'ai donc crée un timer qui rappelle une fonction, et dans cette
fonction je voulais juste lever une exception pour que mon read s'arrete et
que je passe dans le catch. Mais comme le timer est executé par un autre
thread, je ne sais pas comment lever une exception dans mon thread (qui est
le thread principal)qui execute le read. Est-ce possible, ou existe-il une
autre solution pour arreter un Read après x secondes?



Merci d'avance pour votre réponse



Vincent

1 réponse

Avatar
Paul Bacelar
Si vous avez une notion de message, pourquoi ne pas utiliser un protocole
réseaux qui le gère comme UDP et tous ses dérivés ?

TCP est un protocole flux et non message.

--
Paul Bacelar

"Vincent" wrote in message
news:423b27e9$0$32586$
Bonjour,



Je souhaite récuperer des données via un NetworkStream. Mon problème est
que par moment le flux que je reçois n'est pas complet, et donc je refais


un
Read alors qu'il n'y a plus de données à recevoir car tout a été envoyé


par
le serveur. Je ne peux pas faire un DataAvailable parce que parfois je


dois
attendre quelques secondes avant de recevoir mes données.

Je voudrais donc utiliser un timer pour qu'après x secondes, la lecture
s'arrete. J'ai donc crée un timer qui rappelle une fonction, et dans cette
fonction je voulais juste lever une exception pour que mon read s'arrete


et
que je passe dans le catch. Mais comme le timer est executé par un autre
thread, je ne sais pas comment lever une exception dans mon thread (qui


est
le thread principal)qui execute le read. Est-ce possible, ou existe-il une
autre solution pour arreter un Read après x secondes?



Merci d'avance pour votre réponse



Vincent