为什么并发TS的某些部分不使用C ++ 17? [英] Why aren't parts of the Concurrency TS going in C++17?

查看:70
本文介绍了为什么并发TS的某些部分不使用C ++ 17?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

根据 Michael Wong ,尽管看上去很完整,并发TS还是没有进来

According to Michael Wong the Concurrency TS is not going in, despite complete, apparently


尽管有实施经验,但它刚刚被批准并且太新鲜了,以至于不能被投票加入C ++ 17。

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中使用。 未来已实施中使用thread.synchronization.futures.then rel = nofollow>。then(),并且Microsoft在PPL中实现了其中的一种形式,因此任何问题都将受到关注,讨论和纠正。 .get()的异步版本是必须的,并且似乎是自2014年初 N3865 (对std :: future的更多改进)的意思好像是。 then()是给定的。这意味着即使 N3327 首先提出了一个 .then(),原因是精简了任何经过深思熟虑,已讨论和已实施的提案,但与之相关的讨论仍在进行中。

My favourite proposal was originally in N3327 but I first read of it in N3857/N3784 and had expected it for C++14. futures has had and implementation of .then() in Boost since 2013 and Microsoft has implemented a form of them in PPL so any issues will have been hit upon, discussed and corrected. An asynchronous version of .get() is a necessity and seemed to been decided upon since early-2014 when N3865 ('More Improvements to std::future') talked as if .then() was a given. Which means even with 5 years since N3327 first raised a .then() due to 'streamlining' any well thought out, discussed and implemented proposal is blocked by discussions going on that is tangential to it.

现在要到2020年才可以发布。

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

并发TS是整体还是全部?提案?如果是这样,为什么?

推荐答案


现在应该是2020年将会发货。

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

正在发货现在。只是不属于C ++标准本身。

It's shipping now. Just not in the C++ standard itself.

您不应该将TS视为虚构的文档。这是真实的事情,许多供应商都采用了TS。例如,Microsoft和libc ++支持FileSystem TS。

You shouldn't think of a TS as some kind of fictional document. It's a real thing, and many vendors implement TS's. Microsoft and libc++ have support for the FileSystem TS, for example.

完成C ++ 17功能后,编译器和标准库供应商便会全力以赴地实现这些功能。更不用说Concepts TS等。因此,并发TS不是它们的最高优先级也就不足为奇了。

With C++17 feature complete, compiler and standard library vendors have their hands full implementing those features. Not to mention the Concepts TS and so forth. So it's not surprising that the Concurrency TS isn't their highest priority.

至于为什么没有将部分并发添加到C ++ 17中,杰克逊维尔会议显示,SG1(并发问题研究小组)特别建议将Parallelism TS添加到标准中,但并未对并发TS这样做。因此,他们显然认为Concurrency TS尚未准备好甚至部分地添加到标准库中。

As for why parts of Concurrency weren't added to C++17, the minutes of the Jacksonville meeting show that SG1 (the study group for concurrency issues) specifically proposed adding Parallelism TS to the standard, but did not do so for Concurrency TS. So they apparently felt that Concurrency TS was not ready to be added to the standard library, even partially.

这篇关于为什么并发TS的某些部分不使用C ++ 17?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆