J'ai ce morceau de code dans un thread secondaire:fois WaitForSingleObject trop rapide
DWORD result = WaitForSingleObject(myhandle,10000);
if(result == WAIT_OBJECT_0){
AfxMessageBox(_T(...));
}
else if(result == WAIT_TIMEOUT){
AfxMessageBox(_T("Timeout"));
}
Parfois, pas toujours, le délai d'attente sera appelé presque dès que le WaitForSingleObject est appelé (retard même pas 1s) .
Est-ce que je fais quelque chose de mal? Des suggestions pour des alternatives plus stables?
EDIT:
myhandle
est créé dans un constructeur de classe:
myhandle = CreateEvent(NULL,FALSE,FALSE,_T("myhandle"));
il s'appelé par une autre fonction:
SetEvent(myhandle);
Le point est-il fonctionne quand Je fais le SetEvent, le problème est qu'il arrive parfois à expiration dès que le WaitForSingleObjec On l'appelle, même s'il faut attendre 10 secondes.
Qu'attendez-vous? D'où vient ma poignée? – RedX
Voir edit :) ... – Smash
Avez-vous vérifié 'GetLastError()' avant et après l'attente? –