#include<iostream>
#include <thread>
using namespace std;
void getData(int a){
std::cout<<a <<std::endl;
}
int main() {
int b = 20;
std::thread t(getData,ref(b));
t.join();
return 0;
}
//std::this_thread::get_id() 获取当前线程ID
//std::this_thread::yield() 转交线程执行权限
//std::this_thread::sleep_for 睡眠一段时间
//std::this_thread::sleep_until 睡眠至某个时刻
c++ 多线程在类里的使用
std::thread t(gridmapSimulFrame::getData, this);
但是加了this 又不能使用static 不用static又会报错reference to non-static member function must be called
多线程报错
terminate called without an active exception
是因为线程因为一些七七八八的缘故结束了
在线程启动后添加t.join()或则t.detach()
网友评论