Jump to content

AsyncCallback ?


Recommended Posts

bonjour

a quoi sert la classe AsyncCallback en .Net , j'ai trouvé que c'est pour la programmation multithreadé mais j'ai pas compris son fonctionnement!!

aider moi SVP et si c'est possible avec un petit exemple c#

merci

Link to post
Share on other sites
bonjour

a quoi sert la classe AsyncCallback en .Net , j'ai trouvé que c'est pour la programmation multithreadé mais j'ai pas compris son fonctionnement!!

aider moi SVP et si c'est possible avec un petit exemple c#

merci

 

If you understand Events, AsyncCallback would be a piece of cake.

Link to post
Share on other sites
  • Moderators
bonjour

a quoi sert la classe AsyncCallback en .Net , j'ai trouvé que c'est pour la programmation multithreadé mais j'ai pas compris son fonctionnement!!

aider moi SVP et si c'est possible avec un petit exemple c#

merci

 

Salem,

 

Un petit exemple grossier en C# :

 

Sur la class System.Net.Sockets.TcpClient par exemple :

 

TcpClient Client;
.
.
.
// on demande une connexion au host distant :
Client.BeginConnect(Host,Port, [b]new AsyncCallBack([/b][color="Red"]Traitement_Evenement[/color][b])[/b],.....);

// tu peux passer à autre chose  sans même besoin de lancer un thread d'ecoute
....

//Définition de la méthode qui receptionnera l'evenement "Reponse Serveur" //comme suit :

public void TraitementEvenement([font=monospace][b][/b][/font]IAsyncResult Resultat)
{
// ici tu mets ton traitement de la réponse du host 
// Finaliser la connexion par exemple comme suit :
Client.EndConnect(Resultat);
}

 

En gros, c'est du multithreading implicite sans entrer dans les détails d'implémentation.

 

Comme c'est en mode Asynchrone, quand on fait une demande de connexion au serveur avec la méthode BeginConnect, on ne bloque pas le programme car la réponse peut être intercepté à n'importe quel moment et traitée, notre programme peut continuer à faire autre chose, quand le hot distant envoie une réponse à notre demande, le délégué ie la méthode "TraitementEvenement" se déclenche pour traiter l'événement.

Edited by mouradski
Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Posts

    • @wosiris tu as pu atteindre une sync de 26 megas car ton SNR est reglé sur 6 (par le modem ou par AT? je n'en sais rien!) ;dans mon cas j'ai un debit sync de 19.5 megas car mon snr est a 8.7db ! faut que je trouve un moyen de le baisser a 6.4db pour etre "GOOD"; en europe l'operateur le fait facilement....en ALGERIE c'est probablement de la science fiction ! je vais essayer de bricoler mon modem via le "hack telnet" ca pourrait marcher mais peu de chance... @parazitenew j'ai l'impression que par DEFAUT AT opte pour un SNR de 9db (cela se faisait dans plusieurs pays europeens...il y a 10 ans) si j'opte pour 20 megas...zaama mon snr baissera a 6.4 ? aucune idée avec AT tout est aleatoire.... un avis @Hicham ?    
    • Oui c'est ce que je pensais, mais je me suis dis on ne sait jamais. Merci
    • séance de test aujourdhui avec le Dlink ddwrt, des PING que j'arrive pas a y croire ( ADSL) j'ai activé le TCP-Packet Priority peut etre que le test utilise ca ?
    • LONG CCCAM  SKY, TNT, OSN....... https://www.up-4ever.org/ucqxm2jb48ic
×
×
  • Create New...