类库(通用应用程序可移植)System.Threading.Thread 限制

本文关键字:System Threading Thread 限制 可移植 应用程序 类库 | 更新日期: 2023-09-27 18:35:24

我使用 Visual Studio 2013 Ultimate Update 4 创建了一个类型为"类库(通用应用程序可移植)"的新项目。生成的PCL针对两个平台,即Windows 8.1和Windows Phone 8.1,这就是我所需要的。

System.Threading.Thread 类在此子集中不受支持。当我使用另外两个平台(.NET Framework 4.5.1 和 Silverlight 5)扩展程序集目标时,System.Threading.Thread 神秘地出现并变得可用。我尝试使用它,它由Windows.Phone 8.1和Windows 8.1 Store应用程序完美运行。

System.Threading.Thread 类只是从"默认"PCL 配置中隐藏,以便将开发人员推向异步/等待模式,我是否正确?

撇开不同异步执行和线程管理模型的优点和优点的比较,在上述场景中使用 System.Threading.Thread 类是否存在任何技术缺点?

提前谢谢。

类库(通用应用程序可移植)System.Threading.Thread 限制

在与 .NET 团队的 David Kean 进行了一些讨论后,这是预期的行为,但请注意,您无法访问完整的 .NET Thread 类;您只能获得一些内容,例如 ManagedThreadIdCurrentUICulture

因此,您仍然需要使用线程池或基于任务的 API 才能运行并行操作。