我想用Visual Studio 异步 CTP(版本 3)在 Windows XP SP3 上的 VS2010 SP1 中进行开发和测试主要是因为我的客户(以及我)在 Windows XP SP3 上。 Ghere在MSDN论坛上有相关讨论:如果我以 .net 4.0 为目标,但在具有 .net 4.5 的计算机上运行,.net 4.0 WPF 错误是否仍然存在?
虽然,关于“原样”许可的说明告诉:
虽然异步 CTP 许可证并不阻止您自己使用它
在生产环境中存在风险,我们建议您不要这样做。目标是
此 CTP 只是为了收集有关我们预期异步设计的反馈。我们
没有设计或构建它以用于生产环境,并且
没有像生产中使用所需的那样对其进行彻底测试
环境,我们认为它有太多缺陷不适合使用
在生产环境中。我们非常感谢有关的反馈
异步 CTP,但我们不打算对异步 CTP 进行任何修复
本身:我们所做的修复只会出现在最终支持的版本中
发布的产品
那些缺陷和错误有多严重,被抛弃了Visual Studio 异步 CTP(版本 3)我应该考虑哪些可能迫使我改变决定的其他考虑因素?
询问的主要原因是:
- 我没有关注太多有关 C#/.NET 4.5 VS2012 主题的内容(由于坚持使用 Windows XP SP3、.NET 4.0 和 VS2010),我需要减少遇到关键问题的时间;
- 我以前从未遇到过这样的情况:我可能应该遵循错误修复列表(而不是根据需要来跟踪特定的孤立问题)
对于这种情况,我现在真的需要吗?
主要问题:
在 VS2010、Windows XP SP3 中的 .NET/C# 4.0 中,不受支持的缺陷不会有简单的解决方法,这些缺陷/可能性有哪些,以及那些可能超过使用 async/await 的好处的缺陷/可能性
对@DanPuzey评论的回答:
该应用程序基于 TPL、WPF,处理来自互联网(证券交易所)的异步数据流。我以前从来不需要担心我会留下不受支持的文档(样本)、缺陷和错误。我可能无法询问它们,因为 MSFT 支持以及其他人都无法重现它们。我想评估使用不受支持的扩展的风险与收益
主要差异、缺陷、错误和风险是否无限且无法列举?到底有没有?
让我引用来自下载页面:
“包括供生产使用的新 EULA。注意 - 该许可证不
鼓励您使用 CTP 进行生产
代码。 CTP 仍然不受支持,使用风险由您自行承担
技术预览。然而,我们收到了很多请求
开发人员使用 CTP 进行生产代码,因此更改了
允许这样做的许可证”
对@CodesInChaos评论的回答:
这不是我的问题开头提到的选项,参考上一篇在此输入链接描述讨论。无法从 VS2012 或具有 .NET 4.5 的计算机开发和测试 .NET 4.0 应用程序。无法在Windows XP上安装VS2012或.NET4.5。我的经验(尝试安装其他供应商的应用程序)是,您提到的方法不会生成运行在视窗XP
我赞同 @CodesInChaos 建议您使用 VS2012 进行开发。我在 Windows 7 上使用 VS2012 开发在 Windows XP 上运行的 .NET 4 应用程序,并且运行良好。唯一需要注意的是,您无法在 .NET 4 上进行调试(您实际上在 .NET 4.5 运行时上运行),但对于 99% 的情况来说这并不重要。
我确实在生产中使用了异步 CTP;我认为对于 CTP 来说它非常稳定。也就是说,存在一些已知的错误。最值得注意的是周围的操作顺序await
表达式。因此请遵循只拥有一个的准则await
每个声明,并使await
表达你的顶级表达式,例如:
var result = await ...;
我相信乔恩·斯基特(Jon Skeet)在他的研究中还发现了一些更隐蔽的错误。教育同步系列.
没有已修复或仍然存在的异步 CTP 错误列表(在Microsoft.Bcl.Async
)。微软内部可能有一些清单,但没有人知道。
该应用程序基于 TPL、WPF,处理来自互联网(证券交易所)的异步数据流。
在这种情况下,请考虑Rx。 .NET 4 完全支持 Rx,但我相信它确实需要 VS2012 进行开发。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)