bonjour,
je fais un gestionnaire tache qui gèrent l'exécution de requêtes sql, le principe est le parcours d'une liste de tâche et a chaque fois que les conditions sont remplies je passe la tache a une fonction qui gère sont execution qui consiste en gros a exécuter une requête sql :
Code:
1
2
3
4
5
6
7
8 if (cond) ThreadPool.QueueUserWorkItem(new WaitCallback(Launch), task); private void Launch(SchedTask task) { ... requête sql; }
Comment je peux gérer le problème d'une requête qui serait trop longue. Chaque tâche a un timer qui doit lui dire de s'arrêter s'il est dépassé, mais je n'arrive pas à le mettre en oeuvre. Je pensais envoyer un signal du thread principal à la tâche pour la tuer, mais je ne sais pas comment y accéder depuis le thread principal une fois qu'elle est dans le threadpool. Je peux récupérer lamais est-ce que je peux tuer la tache avec l'id ?Code:Thread.CurrentThread.ManagedThreadId