Bonjour,
Je reviens une nouvelle fois pour vous demander : est ce que le systeme de message avec PostMessage "gère les accès concurents"?
En fait j'ai deux threads qui font un post message sur le même identifiant : et donc sur la même fonction associée à cet identifiant.
Est ce que cette fonction peut-etre appelée simultanement par deux threads? et donc faut-il gerer les accès concurents sur les variables modifiées par cette fonction?
Voici le code de ma fonction :
Comment faire pour mettre un verrou autour de ma variable _compteur? (qui est une variable de classe)
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 long CThreads_testDlg::OnReceiveMessageTest(WPARAM wparam, LPARAM lparam) { int indice = (int) wparam; int id = (int) lparam; /*CString ids; ids.Format("id=%d -- cpt=%d",id ,_compteur ); AfxMessageBox(ids);*/ if(_compteur > 0) { _compteur--; SetEvent(_threads[indice]->_events[0]); } else { SetEvent(_threads[indice]->_events[1]); } return 0; }
Partager