En WinForms, tiene Control.BeginInvoke()
, lo que significa que puede ordenar una llamada desde un subproceso en segundo plano al subproceso de la IU principal que creó el identificador del control.Marshall a un subproceso manualmente
Esto está bien, pero ¿cómo (en C#) haría esto entre dos hilos "estándar"?
He escrito un bus de servicio, que tiene un hilo de procesador para consumir mensajes. Quiero un temporizador para disparar, que hace que el hilo del procesador haga algo, en lugar del código que se ejecuta en el hilo del temporizador.
Por supuesto que puedo usar sincronización de hilos (Monitor
/using() {...}
) pero me preguntaba cómo se hacía normalmente.
SynchronizationContext fue la respuesta que estaba buscando, ¡gracias! –