¿Existe una forma 'estándar' de especificar que una continuación de tarea debe ejecutarse en el subproceso desde el que se creó la tarea inicial?Continuación de la tarea en el subproceso UI
Actualmente tengo el siguiente código: funciona, pero hacer un seguimiento del despachador y crear una segunda Acción parece una sobrecarga innecesaria.
dispatcher = Dispatcher.CurrentDispatcher;
Task task = Task.Factory.StartNew(() =>
{
DoLongRunningWork();
});
Task UITask= task.ContinueWith(() =>
{
dispatcher.Invoke(new Action(() =>
{
this.TextBlock1.Text = "Complete";
}
});
En el caso de su ejemplo, puede usar 'Control.Invoke (Action)', es decir. 'TextBlock1.Invoke' en lugar de' dispatcher.Invoke' –
Gracias @ColonelPanic, pero estaba usando WPF (como etiquetado), no winforms. –