c++ - 为什么部分 Concurrency TS 不采用 C++17?

标签 c++ standards c++17

根据 Michael Wong并发 TS 没有进入,尽管完成了,显然

Although there is implementation experience, it was just approved and is too fresh to be voted to be added to C++17.

我最喜欢的提案最初是在 N3327但我第一次读到它是在 N3857/N3784并期待它用于 C++14。 futures 已经实现了 .then() in Boost自 2013 年以来,Microsoft 已经在 PPL 中实现了它们的一种形式,因此任何问题都会被触及、讨论和纠正。 .get() 的异步版本是必需的,并且似乎是在 2014 年初 N3865 时决定的。 ('More Improvements to std::future') 说起来好像 .then() 是给定的。这意味着即使自 N3327 以来已有 5 年首先提出一个 .then(),因为“精简”任何经过深思熟虑、讨论和实现的提案都被与其无关的正在进行的讨论所阻止。

现在要到 2020 年才会发货。

Concurrency TS 是一个完整的还是什么都没有的提案?如果是,为什么?

最佳答案

It is now going to be 2020 before it will ship.

它正在发货现在。只是不在 C++ 标准本身中。

您不应将 TS 视为某种虚构的文档。这是一个真实的东西,许多供应商都实现了 TS。例如,Microsoft 和 libc++ 支持 FileSystem TS。

随着 C++17 功能的完善,编译器和标准库供应商可以全力实现这些功能。更不用说 Concepts TS 等等。因此,Concurrency TS 不是他们的最高优先级也就不足为奇了。

至于为什么Concurrency的部分内容没有加入到C++17中,Jacksonville的 session 纪要显示SG1(并发问题的研究组)专门提出将Parallelism TS加入标准,但并没有这么做对于并发 TS。所以他们显然觉得 Concurrency TS 还没有准备好添加到标准库中,即使是部分。

关于c++ - 为什么部分 Concurrency TS 不采用 C++17?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38894020/

相关文章:

C++ 17 为什么不删除二合字母和三合字母?

c - extern 关键字对 C 函数的影响

c++ - 如何检测可变函数参数列表中给定类型参数的可用性,并在处理完所有参数后采取行动

c++ - DirectX Vertex 中的 THE 是什么

c++ - 当您在检索到的值的表达式上进行分支时,是否有像 `if (Value * value = getValue())` 这样的习语?

C++避免位操作中的完全移位

c++ - 使用 std::tie 解包返回值会导致额外成本吗?

c++ - 使用 C++ 作为脚本语言

go - 在 `golang` float64 乘法上进行高精度错误路由的正确方法是什么

c++ - gcc 6 是否支持使用 std::sample (c++17)?