tink_core Future (haxe) form c++
tink_core Future (haxe) form c++
在haxe中有一个名为tink-core的库,它提供所谓的"Futures"。
Future是一个尚未计算的值(例如异步操作的结果)。
在其他事情中,我可以用未来做以下事情:
- 用一个修改值的函数调用map,用修改后的值创建一个新的未来
- 首先调用两个期货,以创建一个新的期货,该期货的价值排在第一位
- 向未来添加一个回调,该回调将在值可用时调用
现在在C++中有std::future,但我看不出上面描述的操作是可能的
此外,std::future似乎只能使用std::async创建。但我想用自己的方式创建未来,而不需要函数回调。
所以我的问题是:
- 我是不是误判了std::未来,它可以做到这一切
- 我还没有在c++中找到一个不同的未来库,可以做到这一点吗
您的主要错误假设是只有std::aysnc
创建std::future
。事实上,std::promise
和std::packaged_task
的作用是相同的。
三个操作(映射)中的第一个操作相当简单。你基本上想要G(F(x))
。这需要一个新的packaged_task
,它获取第一个未来,等待其结果,然后调用F(x)
上的函数G()
第二个操作在标准C++中效率很低,因为没有有效的多等待。你必须对两个未来都进行民意调查。相比之下,Windows有WaitForMultipleObjects()
。
第三个基本上是第一个的变体,因为它基本上是f=F(X);G(f); return f
——一旦F(X)
返回,就调用G
,但忽略G
的返回值,并使用F(X)
的原始返回值。
相关文章:
- cpp libcurl 在 HTTP post 调用中发送 zip 文件,而不使用 multipart\form-da
- 在使用Qt Designer Form Classes扩展我自己的自定义小部件时防止重复的自动连接
- 来自 Visual C++ Windows Form 项目的 SQL 连接
- QML应用程序编译一个 *form.ui.qml文件,但忽略了关联的.qml文件
- 使用视觉C++设置"Windows Form Application"中的像素值
- HwndHost for Windows Form - Win32 / WinForm Interoperability
- 更改Form.h之外的表单标签文本
- Boost.asio in Visual C++ Form project
- Qt "Form Load"功能
- tink_core Future (haxe) form c++
- Visual c++ Form -如何通过单击按钮改变标签的可见属性
- Content-Type: application/x-www-form-urlencoded in curl
- HTTP multipart/form-data发送字符串数组
- 一个简单的web服务器在c++中使用asio和form post从safari似乎不工作
- 我如何上传一个文件或者我们可以说在Visual c++ Form Application中从系统中选择一个文件
- 提升any_range与 "canonical form" - 后者是什么?
- 在form中追加文本