Problemi con WaitForMultipleObjects (kernel32)

lunedì 23 luglio 2007 - 15.47

clauderay80 Profilo | Newbie

Ciao ragazzi, avrei bisogno di un grosso aiuto,
Il mio problema è che chiamando la WaitForMultipleObjects della dll kernel32 con questa signature:

[DllImport("c:/windows/system32/kernel32.dll")]
static extern uint WaitForMultipleObjects(uint nCount, IntPtr[] lpHandles,
bool bWaitAll, uint dwMilliseconds);

il mio thread di attesa è:

public void StartHearing()
{

while (true)
{

uint n = new uint();
n = Convert.ToUInt32(_Handles.Length);
uint waitResult = WaitForMultipleObjects(n, _Handles, false, INFINITE);

// For timeout, just loop and wait again
if (waitResult != 258)
{
goread(waitResult);
}
}


i puntatori agli eventi sono corretti, il problema è che la WaitForMultipleObjects si sveglia a QUALSIASI evento e mi ritorna sempre 0, quando invece dovrebbe tornare l'indice dell'handler svegliato!

Avete qualche idea??

grazie in anticipo!

Cla

clauderay80 Profilo | Newbie

Ho trovato!
erroraccio mio, avevo creato l'handler con la CreateEvent con lo stesso nome!
Gli handlers ritornati sono diversi ma puntano allo stesso evento!

ps: mi sono autorisposto in caso qualcuno avesse lo stesso problema!

Cla
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5