【发布时间】:2012-01-21 20:27:56
【问题描述】:
我正在创建一个任务,然后分配一个线程等待任务完成,然后修改 UI。
string txt = txtHelloMessage.Text;
HelloTask = Task<string>.Factory.StartNew(
() =>
{
string msg = client.SayHello(txt);
return msg;
}
);
new Thread(
() =>
{
while (true)// waiting for completion, I think that this is wrong
{
if (HelloTask.IsCompleted)
{
this.Dispatcher.Invoke((Action)delegate() { txtHelloMessage.Text = HelloTask.Result; });
break;
}
}
}
).Start();
这是好的做法吗?
【问题讨论】:
标签: c# multithreading async-await task