c++多线程总结(不断更新)

2019-12-19  本文已影响0人  送分童子笑嘻嘻
#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()

上一篇下一篇

猜你喜欢

热点阅读