c++ - C++ 中的 std::thread 与 Go 语言中的 goroutine?

标签 c++ multithreading c++11 go cloud

go语言中gorouting的本质是一个自动的fiber/coroutine。

C++ 中 std::thread 的本质是对 native 线程的包装。

我认为 std::thread 应该是并行工作的抽象,而不仅仅是针对原生线程。在云计算时代,它非常重要。

有没有办法像下面这样使用 std::thread:

std::thread<GoroutingStyle>    t1;
std::thread<NativeThreadStyle> t2;

或者如果没有,C++ 标准是否考虑添加一些功能/库来支持 goroutine?

最佳答案

Or if not, does the C++ standard consider to add some features/libraries to support goroutine?

您所请求的是类似于纤程库的东西 - 即将推出的库 boost.fiber 包含协作调度的纤程、互斥锁/条件变量/障碍/... - 接口(interface)类似于 boost.thread。

关于c++ - C++ 中的 std::thread 与 Go 语言中的 goroutine?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18557916/

相关文章:

c++ - 我可以使用我称之为 "Raw OpenGL"的东西吗?

Python套接字未接收消息

c++ - 为什么此代码不创建竞争条件?

c++ - 如何在 TStringGrid 单元格中绘制按钮

c++ - 我对等式测试 bool 运算符有疑问

C++链表对遍历生成core dump

c++ - 将 boost::optional 与常量类型一起使用 - C++

java - 使用java同时通过不同程序读取和附加文件

c++ - 是否有用于解析小数的良好 C++ 工具?

c++ - 可以使用placement-new 和vector::data() 替换 vector 中的元素吗?