2009-10-25 3 views
0

Je suis désolé pour le titre mais je ne sais vraiment pas comment le décrire. J'utilise threadpool pour le traitement des données entrantes sur le côté serveur et dans une méthode, je devrais appeler la méthode statique de manière asynchrone, mais je ne suis pas sûr de savoir comment faire cela.Appels asynchrones à partir de méthodes déjà exécutées dans le pool de threads

Lorsque le serveur reçoit les données du client, il utilise threadpool:

System.Threading.ThreadPool.QueueUserWorkItem (c.ReadData);

Dans le c.ReadData je devrais appeler la méthode statique dont le résultat n'est pas important (envoie quelques données au site Web) et je n'ai pas besoin de le savoir. Je ne suis pas sûr de savoir quelle est la meilleure solution ici. Merci!

Répondre

2

Vous pouvez utiliser la classe HttpWebRequest pour effectuer une demande par programme à une ressource via HTTP. Mettez un appel à cette méthode dans votre méthode que vous passez dans QueueUserWorkItem.

+0

Oui Je l'utilise mais cela prend trop de temps, c'est pourquoi j'ai besoin de fonctionner de manière asynchrone. – Thomas

+0

@Tomas: QueueUserWorkItem est asynchrone. L'action est mise en file d'attente jusqu'à ce qu'un thread soit disponible dans le pool de threads pour le service. Si vous souhaitez que le code qui exécute de manière asynchrone la requête Web, consultez les méthodes BeginGetRequestStream et EndGetRequestStream de la classe HttpWebRequest. – pmarflee

Questions connexes