Bonjour
J'entend beaucoup parler de THREAD.
J'ai lu la petite doc de pure qui en parle, j'ai fouiné dans le forum, mais beaucoup de questions restent sans reponses.
1/ Ya t'il une frontiere d'OS de W95 a XP pour les utiliser ?
2/ Ya t'il une frontiere de processeur pour les utiliser ou bien n'importe quel PC 386 au P4 peut fonctionner avec les THREAD ?
3/ Est il plus perturbant d'avoir un exe avec des THREAD créé en PB pour les autres applications qui tournent sur la même machine, comme les monstres de pack office, etc ...
4/ Quel sont les désavantages des THREAD ? sur l'application elle-meme et sur le PC en général.
5/ Peut on creer autant de THREAD que l'on desire ?
6/ J'ai lu qu'il ne fallait jamais "killer" un THREAD en cours, mais une fois fini, ne reste t-il aucune trace en mémoire ?
Voila les premieres questions qui me viennent à l'esprit, si quelqu'un connait un TUTO français sur ce sujet ou bien peut m'éclairer sur toutes ces incertitudes, je lui en serais tres reconnaissant.
je doit creer une appli qui aurais besoin de ces THREAD, mais je ne veut pas baser tout mon prog sur cette fonction sans en connaitre les inconvénients et avantages.
Merci.
Les thread
-
- Messages : 305
- Inscription : mer. 05/janv./2005 12:58
- Localisation : http://www.tib-net.com/meca/index.htm
Salut,
J'ai utiliser quelque thread dans mes progs et je reponds à tes intérrogation dans la limite de mes experiences.
1/ OK sur win 98, sur 2k et sur XP
2/ OK sur p2 300 Mhz ; P3 1.8
3/ Pas eu de problème
4/ Le débuggage est des fois un peu pénible car le debuggeur suit le prog principale et non la thread.
5/ ?
6/ Tu peux killer un thread mais ce n'est pas jolie
Et voici un petit exemple pour info et pour te donner la combine pour connaitre la fin d'un thread avec un postmessage
J'ai utiliser quelque thread dans mes progs et je reponds à tes intérrogation dans la limite de mes experiences.
1/ OK sur win 98, sur 2k et sur XP
2/ OK sur p2 300 Mhz ; P3 1.8
3/ Pas eu de problème
4/ Le débuggage est des fois un peu pénible car le debuggeur suit le prog principale et non la thread.
5/ ?
6/ Tu peux killer un thread mais ce n'est pas jolie
Et voici un petit exemple pour info et pour te donner la combine pour connaitre la fin d'un thread avec un postmessage
Code : Tout sélectionner
Procedure ThreadTest(Para)
For i=1 To 200
Delay(10)
SetWindowTitle(0,Str(i))
Next
PostMessage_(WindowID(0),#WM_user+1,1,1)
EndProcedure
OpenWindow(0, 0, 0, 150, 150, "Test", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_ScreenCentered)
CreateGadgetList(WindowID( 0))
ButtonGadget(1,10,10,100,20,"Lance thread")
ButtonGadget(3,10,50,100,20,"Kill thread")
Repeat
event = WaitWindowEvent()
Select event
Case #PB_Event_Gadget
Select EventGadget()
Case 1
threadID=CreateThread(@ThreadTest(),Para)
Case 3
KillThread(threadID)
EndSelect
Case #WM_user+1
MessageRequester("Yes","Thread Terminé")
Case #WM_CLOSE
quit=1
EndSelect
Until quit=1
End
Vive le temps libre !
-
- Messages : 58
- Inscription : jeu. 22/déc./2005 11:23