现在VS 2012发布后,是否正确使用Async和VS 2010?

And*_*lon 11 c# visual-studio-2010 async-await async-ctp visual-studio-2012

由于工作限制,我需要在不久的将来继续使用Visual Studio 2010.与此同时,我在个人编码中一直在学习Async.最新的Async CTP是否与C#5.0的Async语言功能完全一致?并且正在安装Async CTP正确使用VS2010的Async吗?

小智 11

Async CTP是async在Visual Studio 2010中使用的唯一方法.但是,它并没有async进入.NET 4.5/Visual Studio 2012,CTP中的一些错误已在最终版本中得到修复.根据CTP的自述文件,您不会在Visual Studio 2010中获得这些错误修复:

关于"原样"许可证的说明

虽然Async CTP许可证不会阻止您在生产环境中使用它,但我们建议您不要这样做.此CTP的目标仅仅是收集有关我们的预期异步设计的反馈.我们没有设计或构建它以用于生产环境,也没有像在生产环境中使用那样彻底地进行测试,我们认为它有太多的缺陷适合在生产环境中使用.我们非常感谢有关Async CTP的反馈,但我们不打算对Async CTP本身进行任何修复:我们所做的修复只会出现在最终支持的已发布产品中.

如果您绝对需要VS 2010,我会尝试首先安装Async CTP,然后安装.NET 4.5(运行时和SDK).在Visual Studio中开发,但使用独立编译器构建.

  • @ach已成为.NET Framework 4.5一部分的某些部分不属于.NET Framework 4,因此可作为单独的DLL提供,您需要将其与应用程序一起分发.一些函数也有名称更改,可能最明显的是`TaskEx.Run(...)`(Async CTP)与`Task.Run(...)`(.NET Framework 4.5). (3认同)
  • @RoyiNamir 好吧,为此,我想您可以安装 VS2012/VS2013 的 Express 版本,使用它来更新您项目的一部分以使用 `async`,并向您的老板展示改进之处。:) (2认同)