-
thread en c builder
bonjour
je travaille dans windows et je débute dans la programmation des threads en C++builder.
dans mon travail, j'ai deux threads "A et B" ; le thread A doit faire une première itération ensuite il lance le thread B et il continu son travail.
pour cela j'ai utilisé la fonction resume() pour lancer le thread A a partir du programme principale, et la même fonction resume() dans le corps de thread A pour lancer thread B (après la première itération).
lorsque je lance mon application, je m'aperçois que le thread A fonctionne bien mais que le 2 n'est pas activé. Il s'active uniquement lorsque le 1 se termine.
donc pas de parallélisme , je ne sais pas est ce que je doit ajouter quelque chose :calim2:
MERCI
-
Qu'est-ce qu'une itération ?
Dans un thread, dans la méthode execute, c'est une boucle infinie (sleep pour ne pas consommer 100%) !
Lance tes deux threads depuis le principal
utilise une TThreadList pour échanger des pointeurs entre A et B, tu l'utilises en FIFO,
A fait new struct,
A rempli la struct
A fait List.Add
Pendant ce temps, en boucle dans B
B fait LockList,
B fait First
B fait Delete(0)
B fait UnlockList,
B traite la struct
B faite delete struct