PC SOFT

PROFESSIONAL NEWSGROUPS
WINDEVWEBDEV and WINDEV Mobile

Home → WINDEV 2024 → Exécution de Thread , Arret de Thread
Exécution de Thread , Arret de Thread
Started by jerome, Jan., 26 2005 10:06 AM - 2 replies
Posted on January, 26 2005 - 10:06 AM
bonjour a toutes et tous,

J'utilise dans mon programme la fonction : ThreadExécute()

Le thread, lancé par un bouton dans une fenetre, que je lance effectue une procedure dans laquelle je lance une requete via la fonction : SqlExec

Les différentes requetes utilisées dans mon programme utilise un driver ODBC pour acceder a une base differente. Toutes les autres requetes renvoient des résultats très ciblés ce qui donne des temps de réponse très court.

Seulement la requete que je lance dans le thread est une requete qui peut etre tres longue a effectuer, d'où l'utilisation d'un Thread.

Je souhaite pouvoir arrêter cette requette dans le cas ou elle est trop longue, en général au bout d'une minute, et pour cela j'utilise la fonction : ThreadArrête().
Seulement cette fonction n'arrete le thread qu'une fois la fonction windev en cours est terminé.

Le problème est que souvent la fonction que je souhaite arrêter est : SqlExec, celle la meme qui prend du temps.

Cela revient donc à attendre la fin de l'execution de la requette pour pouvoir stopper mon thread.

Je souhaite savoir s'il existe d'autres moyens sachant que je dois stopper la requete pendant son execution.

PS: J'ai meme fait lancer le thread par ma fenetre d'attente (celle qui contient le bouton "Annuler") et je l'ai fermer pendant l'execution de la requete. Sur le moment, aucun effet, mais apres quelques secondes (correspondant au temps d'execution de la requete), une erreur fatale est apparue.

en vous remerciant d'avance,

Jerome.
Posted on January, 26 2005 - 11:41 AM
Bonjour

Essayez un SQLFerme(nomrequete) avant le ThreadArrrete.

Cordialement
Posted on January, 26 2005 - 5:15 PM
merci a toi !

en effet la fonction SqlFerme permet de stopper la requete avant la fin de son execution complete.

bonne journée a tous et encore merci !