J'ai un probleme avec un UdpClient, il ne recoit plus rien apres un
certain temps d'inactivite.
Mon thread est tres simple :
----
while (true)
{
ar = BeginReceive(callback);
ar.AsyncWaitHandle.WaitOne();
data = EndReceive();
Console.WriteLine(data);
}
void callback()
{
// Rien ici, on se sert du AsyncResult
}
----
Si l'emetteur arrete d'envoyer pendant quelques minutes, mon thread
reste bloque dans la fonction WaitOne(), meme si de nouvelles data
arrivent (confirme par une analyse Wireshark).
J'ai teste aussi de faire le EndReceive() dans le callback par acquis
de conscience, ca me fait la meme chose.
Quelqu'un a une piste ? Il y a surement un truc que je fais mal mais
j'arrive pas a cerner le probleme...
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Greg
On 11 août, 15:00, Greg wrote:
Bonjour,
J'ai un probleme avec un UdpClient, il ne recoit plus rien apres un certain temps d'inactivite.
Mon thread est tres simple :
---- while (true) { ar = BeginReceive(callback); ar.AsyncWaitHandle.WaitOne(); data = EndReceive(); Console.WriteLine(data);
}
void callback() { // Rien ici, on se sert du AsyncResult}
----
Si l'emetteur arrete d'envoyer pendant quelques minutes, mon thread reste bloque dans la fonction WaitOne(), meme si de nouvelles data arrivent (confirme par une analyse Wireshark).
J'ai teste aussi de faire le EndReceive() dans le callback par acquis de conscience, ca me fait la meme chose.
Quelqu'un a une piste ? Il y a surement un truc que je fais mal mais j'arrive pas a cerner le probleme...
Merci d'avance
Probleme trouve, c'est le firewall de windows qui laisse passer le traffic tant qu'il y a de l'activite mais qui bloque s'il se passe rien pendant un temps donne... ca s'invente pas!
On 11 août, 15:00, Greg <it...@itooo.com> wrote:
Bonjour,
J'ai un probleme avec un UdpClient, il ne recoit plus rien apres un
certain temps d'inactivite.
Mon thread est tres simple :
----
while (true)
{
ar = BeginReceive(callback);
ar.AsyncWaitHandle.WaitOne();
data = EndReceive();
Console.WriteLine(data);
}
void callback()
{
// Rien ici, on se sert du AsyncResult}
----
Si l'emetteur arrete d'envoyer pendant quelques minutes, mon thread
reste bloque dans la fonction WaitOne(), meme si de nouvelles data
arrivent (confirme par une analyse Wireshark).
J'ai teste aussi de faire le EndReceive() dans le callback par acquis
de conscience, ca me fait la meme chose.
Quelqu'un a une piste ? Il y a surement un truc que je fais mal mais
j'arrive pas a cerner le probleme...
Merci d'avance
Probleme trouve, c'est le firewall de windows qui laisse passer le
traffic tant qu'il y a de l'activite mais qui bloque s'il se passe
rien pendant un temps donne... ca s'invente pas!
J'ai un probleme avec un UdpClient, il ne recoit plus rien apres un certain temps d'inactivite.
Mon thread est tres simple :
---- while (true) { ar = BeginReceive(callback); ar.AsyncWaitHandle.WaitOne(); data = EndReceive(); Console.WriteLine(data);
}
void callback() { // Rien ici, on se sert du AsyncResult}
----
Si l'emetteur arrete d'envoyer pendant quelques minutes, mon thread reste bloque dans la fonction WaitOne(), meme si de nouvelles data arrivent (confirme par une analyse Wireshark).
J'ai teste aussi de faire le EndReceive() dans le callback par acquis de conscience, ca me fait la meme chose.
Quelqu'un a une piste ? Il y a surement un truc que je fais mal mais j'arrive pas a cerner le probleme...
Merci d'avance
Probleme trouve, c'est le firewall de windows qui laisse passer le traffic tant qu'il y a de l'activite mais qui bloque s'il se passe rien pendant un temps donne... ca s'invente pas!