在Windows 8.1中创建线程

时间:2014-07-14 09:56:49

标签: c# multithreading windows-store-apps windows-8.1

是否可以在Windows 8.1存储应用程序中创建线程和控制线程..如果是这样,它是如何完成的?

文档提到System.Threading命名空间中的w8.1支持Thread类,但在VS2013中创建w8.1商店应用程序时不会出现。

Windows 8中还有一个Deployment.Current.Dispatcher.BeginInvoke。在w8.1上是否有相同的内容?

我已阅读有关任务的内容,但仍不清楚它与线程的关系。

1 个答案:

答案 0 :(得分:2)

Task本质上是一个委托的包装器,它被安排在特定的TaskScheduler上做一些工作。 TaskScheduler调度程序在一个或多个线程上工作。

TaskScheduler.Default在线程池上执行任务,如果您想在后台执行某些操作,那么这是您最常使用的任务。您还可以使用调度程序TaskScheduler.FromCurrentSyncrhonizationContext(),它将在当前SynchroniztionContext上运行任务。对于GUI应用程序,这是UI线程。

在.NET 4.5中,您只需调用Task.Run并传入Action即可在线程池上运行任务。

根据this,Windows 8.1也支持Dispatcher.BeginInvoke