Esiste un modo "standard" per specificare che una continuazione dell'attività deve essere eseguita sul thread da cui è stata creata l'attività iniziale?
Attualmente ho il codice qui sotto: funziona, ma tenere traccia del dispatcher e creare una seconda azione sembra un sovraccarico inutile.
dispatcher = Dispatcher.CurrentDispatcher;
Task task = Task.Factory.StartNew(() =>
{
DoLongRunningWork();
});
Task UITask= task.ContinueWith(() =>
{
dispatcher.Invoke(new Action(() =>
{
this.TextBlock1.Text = "Complete";
}
});
Control.Invoke(Action)
, ad es.TextBlock1.Invoke
piuttosto chedispatcher.Invoke