Eventos en multiproceso

21/05/2004 - 11:40 por Eduardo Figueres | Informe spam
Hola, estoy desarrollando una aplicación (servicio windows) que se compone
de varios suprocesos (threads). Cada uno gestiona una parte del sistema como
puede ser E/S del puerto serie, acceso a BBDD, etc.

Mi duda aparece cuando un hilo de ejecución queda bloqueado o a la espera
del final de ejecución de un método, por ejemplo, transmitir datos a base de
datos. Si la conexión se pierde, por caida del servidor u otro motivo,
existen 20 segundos de espera en los cuales no puedo manejar eventos.

¿Esta imposibilidad de manejar eventos es a nivel de hilo de ejecución o
proceso?
¿Puedo asegurar que los distintos hilos no interferirán en el manejo de
eventos?

Gracias y un saludo,

Preguntas similare

Leer las respuestas

#1 Octavio Hernandez
21/05/2004 - 14:13 | Informe spam
Eduardo,

En principio, debería ser sólo a nivel de hilo de ejecución...
¿Qué base de datos es?¿Tienes alguna sospecha de que se queda todo el
proceso parado? En todo caso, una prueba no debería ser difícil de hacer...

Slds - Octavio

"Eduardo Figueres" escribió en el mensaje
news:%
Hola, estoy desarrollando una aplicación (servicio windows) que se compone
de varios suprocesos (threads). Cada uno gestiona una parte del sistema


como
puede ser E/S del puerto serie, acceso a BBDD, etc.

Mi duda aparece cuando un hilo de ejecución queda bloqueado o a la espera
del final de ejecución de un método, por ejemplo, transmitir datos a base


de
datos. Si la conexión se pierde, por caida del servidor u otro motivo,
existen 20 segundos de espera en los cuales no puedo manejar eventos.

¿Esta imposibilidad de manejar eventos es a nivel de hilo de ejecución o
proceso?
¿Puedo asegurar que los distintos hilos no interferirán en el manejo de
eventos?

Gracias y un saludo,


Respuesta Responder a este mensaje
#2 Eduardo Figueres
21/05/2004 - 16:42 | Informe spam
El servidor de base de datos es SQLServer2000.

Efectivamente mis sospechas se basan en que he detectado que cuando se corta
la conexión a bd, y se queda esperando (lo establecido en el timeout), dejo
de recibir eventos en el hilo que controla el puerto serie.

Me pregunto si el problema puede venir porque al quedarse esperando a
establecer la conexión no acaba de consumir el evento y por ello no se
procesan nuevos eventos que van llegando hasta que finalmente se descartan
estos últimos eventos. En este caso ¿podría forzar la consumición del evento
antes de establecer la conexión?

Gracias y un saludo,
Respuesta Responder a este mensaje
#3 Octavio Hernandez
23/05/2004 - 11:00 | Informe spam
¿No será que estás tratando los eventos en el hilo principal?

Slds - Octavio

"Eduardo Figueres" escribió en el mensaje
news:
El servidor de base de datos es SQLServer2000.

Efectivamente mis sospechas se basan en que he detectado que cuando se


corta
la conexión a bd, y se queda esperando (lo establecido en el timeout),


dejo
de recibir eventos en el hilo que controla el puerto serie.

Me pregunto si el problema puede venir porque al quedarse esperando a
establecer la conexión no acaba de consumir el evento y por ello no se
procesan nuevos eventos que van llegando hasta que finalmente se descartan
estos últimos eventos. En este caso ¿podría forzar la consumición del


evento
antes de establecer la conexión?

Gracias y un saludo,


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida