Delphi - Problema con WaitForSingleObject

 
Vista:

Problema con WaitForSingleObject

Publicado por Javi (4 intervenciones) el 03/03/2003 08:37:18
hola, de antemano gracias :)

Tengo un problema... tengo un hilo que hace una espera infinita, a la espera de un evento.

ManejadorCambio := FindFirstChangeNotification
( pchar(Path),
FALSE, FILE_NOTIFY_CHANGE_FILE_NAME);

...

WaitForSingleObject ( ManejadorCambio, INFINITE );
...

Para cerrar la aplicación y cerrar bien el hilo, he pensado, poner en el terminate del hilo :

procedure TT1.Terminate;
begin
inherited;
// Mando el Evento para despertar al hilo
PulseEvent( ManejadorCambio);
end;

y asi conseguir que el hilo despierte de su espera y termine correctamente, pero esto que en teoria deberia de funcionar sin mas problemas, no me funciona, he intentado duplicar el manejador y hacer el "PulseEvent( Manejador2 )" con la copia, pero nada, que no hay manera. A ver si alguien me puede hechar un mano :)

Un saludo y de nuevo gracias :)

Javi
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Problema con WaitForSingleObject

Publicado por Javi (4 intervenciones) el 03/03/2003 09:33:14
Hola, soy yo otra vez... Ya he solucionado el problema, en vez de usar un WaitForSingleObject, uso WaitForMultipleObjects, y añado un evento de salida, que es el que lanzo en Terminate :)

Aunque tenga ya la solución, me gustaria que alguien me expliclara, porque no funciona usando un solo evento :) gracias

Un saludo

Javi
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar