c ++创建临时线程对象不会启动新线程

时间:2018-03-10 15:10:05

标签: c++ c++11

#include <iostream>
#include <thread>

void f() {
    std::cout << "hello" << std::endl;
}

int main() {
    std::thread(f);
    while(true) {}
}

运行上面的代码会像我预期的那样永久挂起,但它不会打印任何内容。如果thread(f)替换为thread t(f),则会打印hello。这是否意味着我的编译器有错误?我在arch linux上使用gcc 7.2.1。

0 个答案:

没有答案