Tengo una aplicación que inicia System.Threading.Timer, luego este temporizador cada 5 segundos lee información de una base de datos vinculada y actualiza GUI en la forma principal de aplicación;Objeto Dispuesto aplicación de excepción y multi hilo
Desde el System.Threading.Timer crear otro hilo para el evento Tick, necesito utilizar Object.Invoke para la actualización de la interfaz de usuario en el formulario principal de la aplicación con el código como el siguiente:
this.Invoke((MethodInvoker)delegate()
{
label1.Text = "Example";
});
La aplicación funcionan muy bien, pero a veces, cuando el usuario cierra el formulario principal y luego cierra la aplicación, si el segundo hilo en el evento timer_tick está actualizando la interfaz de usuario en el hilo principal, el usuario obtiene una ObjectDisposedException.
¿Cómo puedo hacer para detener y cerrar el temporizador de enhebrado antes de cerrar el formulario principal y evitar la excepción de objeto eliminado?
'System.Threading.Timer' no tiene un evento' Tick'. El único temporizador de BCL que realmente tiene el evento 'Tick' es' System.Windows.Forms.Timer'. ¿Puedes aclarar cuál estás usando? Esto es importante. –