使用 VS2010 Async CTP 的主要风险与好处是什么?

2023-12-03

我想用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(使用前将#替换为@)

使用 VS2010 Async CTP 的主要风险与好处是什么? 的相关文章

随机推荐

  • Firefox 中忽略网格项目的填充/边距百分比

    This codepen在 Chrome 上创建一个 100 50 px 的红色单元格网格 这是预期的行为 grid display grid grid gap 8px grid template columns 100px 100px c
  • 没有 XML 的 Android AdMob

    我有一个很大的问题要问 因为我真的被这个问题困扰了 它会被创建来在我的免费应用程序上获取广告 好吧 首先我一直在关注这本书 2011年开始Android游戏 http www apress com 9781430230427 现在这本书实现
  • Uniscan:可加载库和 perl 二进制文件不匹配

    Uniscan 是一款用于扫描 kali linux 和其他笔测试发行版中的网站的工具 我曾经每周使用它来测试我的应用程序 但在对我的 Linux 工具进行一些更新后 现在在运行它时出现以下错误 xs Moose c 可加载库和 Perl
  • JS中递归添加字符串

    我正在解决一个递归问题 该问题返回一个 hi 字符串 其中第一个 hi 的大写字母 H 并且该字符串以感叹号结尾 到目前为止 我有下面的代码 但我不确定如何防止随后出现大写 H 的 hi 欢迎任何指导 function greeting n
  • 一种在firefox的urlbar中观察url,并在每次变化时获取事件的方法

    我的 Firefox 扩展需要它 我不关心等待页面完全加载 我只想观察 URL 并在每次更改时获取一个事件 以及当我来回历史记录时 edit I saw URL 变化的观察者 Firefox 扩展 但我想知道是否有更简单的东西 例如每次 u
  • 尝试包含 phpseclib 时无法打开流错误消息

    我正在尝试按照安装 phpseclib 的说明进行操作 我解压了所有内容并创建了一个新的phpseclib文件夹到 usr share pear 所以我有以下结构 usr share pear phpseclib Net Crypt Fil
  • Botframework 在完成当前意图对话框之前不会中断其他意图对话框

    我使用 LUIS ai 实现意图 A 和 B 在意图 A 中我正在使用builder Prompts text向用户询问几个问题 然而 有时根据答案 它会切换到意图 B 我猜它恰好与我的意图 B 相匹配 尽管我认为它不应该 有没有办法防止这
  • 在 matplotlib 中使用 PolyCollection 进行绘图

    我正在尝试在 matplotlib 中绘制 3 维图 我必须在单个 3D 图中绘制四个 或多个 半径的频率与幅度分布 我正在查看 matplotlib collections 中可用的 PolyCollection 命令 并且还浏览了该示例
  • YouTube 数据 API 通过句柄获取频道

    句柄简介 一种识别 YouTube 频道的新方法 YouTube 数据 API 是否支持通过 handle 查询频道 这似乎不被支持 ex https www youtube com lionsgatemovies forUsername
  • Nuxt:如何显式命名 JS 块?

    我在用着Nuxt在静态站点生成模式下 我的项目中的一项要求是仅部署某些路线 每条路线都有各自的资产 But Nuxt给块随机名称 例如925446d js 所以我创建了一个手册router js并在导入我的组件时指定块名称 componen
  • Chrome-Mobile PWA 全屏:应用程序区域超过 HTML 高度

    所以 我得到了一个 Angular PWA 它设置为全屏运行 但是当我设置 display fullscreen 在网络清单中 而不是 display standalone 我得到了一块额外的可滚动内容 它的大小与现在隐藏的 Android
  • 读取文本文件时如何修复此 cp950“非法多字节序列”UnicodeDecodeError?

    我的老师教我们如何使用 exec 但我得到了一个错误 UnicodeDecodeError cp950 codec can t decode byte 0xe6 in position 1814 illegal multibyte sequ
  • 使用 awk 或 sed 比较两个文件

    这对你来说一定很容易 这是 file1 一列 1 2 3 4 5 6 7 8 9 这是 file2 两列 2 yay 3 ups 4 wow 8 hey 必须有一个简单的行来打印 file1 中与 file2 不匹配的行 awk NR FN
  • 如何在 Spidermonkey 中创建、处理和销毁 JS::Heap 对象?

    Using 蜘蛛猴 24 38 45 蜘蛛猴文档说 堆上的 GC 事物指针必须包装在 JS Heap 中 唯一的例外是 如果使用 JS AddRoot 函数或 JS PersistentRooted 类将它们添加为根 但是不要这样做 除非这
  • 未检查 TypeScript 内联类型

    有两种 至少 方法可以在 TS 中声明变量的类型 但它们似乎以不同的方式工作 这是一个错误还是一个功能 对我来说看起来像一个错误 type T1 Partial lt a string gt const wrong1 T1 a1 a thi
  • 在 Xcode 8.2 中编译大型数组文字

    使用 Swift 存储大型多维数组的最佳方法是什么 我有一个 4D 整数数组 它似乎在 Xcode 8 2 中减慢了编译速度 因为它大约有 200 组 9 个整数 总共 1800 个 第一个数组由 12 个数组组成 每个数组有 8 个数组
  • 如何按日期对数据框进行排序

    我需要在 R 中按日期对数据框进行排序 日期均采用 dd mm yyyy 的形式 日期位于第三列 列标题是 V3 我已经了解了如何按列对数据框进行排序 并且了解了如何将字符串转换为日期值 我无法将两者结合起来以便按日期对数据框进行排序 假设
  • 在 Python 3 中从同一包内和包外导入模块

    好吧 场景很简单 我有这个文件结构 interface py pkg init py mod1 py mod2 py 现在 这些是我的条件 mod2需要导入mod1 interface py 和 mod2 都需要作为主脚本独立运行 如果您愿
  • 如何捕获 PHP 类型提示中的“可捕获的致命错误”?

    我正在尝试在我的一堂课上实现 PHP5 的类型提示 class ClassA public function method a ClassB b class ClassB class ClassWrong 正确用法 a new ClassA
  • 使用 VS2010 Async CTP 的主要风险与好处是什么?

    我想用Visual Studio 异步 CTP 版本 3 在 Windows XP SP3 上的 VS2010 SP1 中进行开发和测试主要是因为我的客户 以及我 在 Windows XP SP3 上 Ghere在MSDN论坛上有相关讨论