示例代码:
void check()
{
sleep(15);
}
int main(int argc, char **argv)
{
std::thread t(check);
t.join();
//......
return 0;
}
程序在醒来之前不会继续运行......
答案 0 :(得分:0)
t.join();
这将等待以完成线程。删除该行。
答案 1 :(得分:0)
join
表示“等待线程完成,然后将其清理干净”。
如果您还不想等待线程,请不要再调用join
。做其他事情,然后在需要完成任务时加入线程。或者调用detach
,让线程在后台运行;虽然在这种情况下,当main
完成时,它将与程序的其余部分一起结束。