Threads : probleme de Terminate
Bonjour à tous !
Les threads me posent quelques difficultés ! En effet, à la destruction de ma form, j'appel la méthode Terminate de ma thread. Cette thread a été créee de la manière suivante :
Code:
1 2 3 4 5
|
inherited Create(false);
Arret:=false;
FreeOnTerminate:=true;
Priority:=tpHighest; |
Methode execute de ma thread :
Code:
1 2 3 4 5
|
repeat
....
until Terminated;
arret:=true; |
Cependant, ma thread n'est pas détruite à la fermeture de mon appli. Plus bizarre, lorsque je fais un pas-à-pas, la thread est détruite....
J'ai donc tenté de terminer ma thread et d'attendre ensuite qu'elle soit bien détruite (boucle infinie) :
Code:
1 2 3 4 5
|
l_Thread.Terminate;
repeat
sleep(100); //pour donner a la Thread le temps de se terminer
until l_thread.arret; |
Quelqu'un pourrait-il m'expliquer cette bizzarerie ?
Merci.