Bonjour,

Je cherche à exécuter simultanément 2 fonctions.
Pour simplifier le problème, voici un code qui correspond simplement à ce qui bloque :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
// -----------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
int s;
bool fini = false;
 
while(!fini)
{
   Label1->Caption = String(s);
   Sleep(100);
   Application->ProcessMessages();
   s++;
}
}
 
// -----------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
int s;
bool fini = false;
 
while(!fini)
{
   Label2->Caption = String(s);
   Sleep(100);
   Application->ProcessMessages();
   s++;
}
}
Dès que je clique sur le bouton1, 1er compteur se lance bien... Par contre, dès que je clique sur le bouton2, le 2ème compteur démarre et le 1er s'arrête.

Y'a-til un moyen simple de résoudre ce problème ou faut-il nécessairement passer par les processus/mutithreads/sémaphores etc (que je ne maitrise pas spécialement)... ?

Merci !