Чи існує "стандартний" спосіб вказати, що продовження завдання повинно працювати на потоці, з якого створено початкове завдання?
На даний момент у мене є код нижче - він працює, але відстеження диспетчера та створення другої дії видається непотрібним накладними.
dispatcher = Dispatcher.CurrentDispatcher;
Task task = Task.Factory.StartNew(() =>
{
DoLongRunningWork();
});
Task UITask= task.ContinueWith(() =>
{
dispatcher.Invoke(new Action(() =>
{
this.TextBlock1.Text = "Complete";
}
});
Control.Invoke(Action)
, тобто.TextBlock1.Invoke
а неdispatcher.Invoke