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 :
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;
}
Comment faire pour mettre un verrou autour de ma variable _compteur? (qui est une variable de classe)