Mantener Hilo ejecutándose

28/04/2005 - 09:56 por Anonimo | Informe spam
Hola, estoy en ese caso

Tengo un hilo que creo así:


hiloMonitor = new System.Threading.Thread(
new
System.Threading.ThreadStart(IniciarMonitorizacion));

hiloMonitor.Name = "MonitorOUT";
hiloMonitor.Start();


IniciarMonitorizacion es un método así:


/// <summary>Monitor para Directorio OUT</summary>
private void IniciarMonitorizacionOUT()
{
monitorOUT = new MonitorOUT ();
monitorOUT.OnNuevoFichero += new
MonitorOUT.MonitorOUT_NuevoFicheroEventHandler
(monitorOUT_OnNuevoFichero);

}


monitorOUT es un recubrimiento de FileSystemWatcher.

Quisiera que el hilo creado estuviera en ejecución hasta
que yo determinase por código, y que el FileSystemWatcher
se ejecutara dentro de el.

Tendría que poner un while que no haga nada en el metodo
Iniciar ()? eso no afectaría al rendimiento ?

Alguna solución más viable ?

Gracias.

Preguntas similare

Leer las respuestas

#1 José Cordero
28/04/2005 - 13:58 | Informe spam
Supongo que habra alguna solución mejor, pero yo tenia el mismo problema, un
hilo todo el tiempo ejecutandose y me afectaba muchisimo el rendimiento probe
ha cambiar la prioridad del hilo y otras propiedades pero nada, al final use
un timer en de un while(true) y mejoro mucho

"" escribió:

Hola, estoy en ese caso

Tengo un hilo que creo así:


hiloMonitor = new System.Threading.Thread(
new
System.Threading.ThreadStart(IniciarMonitorizacion));

hiloMonitor.Name = "MonitorOUT";
hiloMonitor.Start();


IniciarMonitorizacion es un método así:


/// <summary>Monitor para Directorio OUT</summary>
private void IniciarMonitorizacionOUT()
{
monitorOUT = new MonitorOUT ();
monitorOUT.OnNuevoFichero += new
MonitorOUT.MonitorOUT_NuevoFicheroEventHandler
(monitorOUT_OnNuevoFichero);

}


monitorOUT es un recubrimiento de FileSystemWatcher.

Quisiera que el hilo creado estuviera en ejecución hasta
que yo determinase por código, y que el FileSystemWatcher
se ejecutara dentro de el.

Tendría que poner un while que no haga nada en el metodo
Iniciar ()? eso no afectaría al rendimiento ?

Alguna solución más viable ?

Gracias.


Respuesta Responder a este mensaje
#2 Tristan
29/04/2005 - 02:31 | Informe spam
No necesitas espera activa. Puedes suspender indefinidamente el subproceso
mediante Sleep:

Thread.Sleep(Timeout.Infinite);

Aunque no tengo nada claro que necesites subprocesos para lo que quieres.
Podrías crear varios FileSystemWatcher ejecutándose sobre el subproceso
principal. ¿Estás seguro?.

Juan Carlos Badiola
MVP - C#
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida