Vay*_*age 19 c# silverlight-4.0 windows-phone-7
我在一些代码中看到过这种Deployment.Current.Dispatcher.BeginInvoke(()=> {...})格式.它曾经在后台做过一些工作吗?它的一般用途是什么?
Jon*_*eet 41
不,它不是在后台线程中工作 - 它是在UI线程上工作.所以它通常从后台线程调用,以便操作UI,这只能在UI线程上完成.
lambda表达式的主体是您要在UI线程中执行的代码.
当更新UI的代码从UI线程以外的线程执行时,会发生无效的跨线程访问异常.
调度程序允许您将一些代码从另一个线程传递到UI线程.
我在这篇文章中提出的项目,以及其他概念.
WindowsClient,HttpWebRequest和Windows Phone 7上的UI线程