1 使用普通函数作为线程函数

代码示例:

#include <iostream>
#include <thread>

void ThreadFunction()
{
    std::cout<< "线程函数被启动" << std::endl;
}


int main()
{
    std::thread thread(ThreadFunction);

    thread.join();

    getchar();
    return 0;
}

2 使用类的成员函数作为线程函数

代码示例:

#include <iostream>
#include <thread>


class ThreadFunc
{
public:
    void ThreadFunction()
    {
        std::cout << "线程函数被启动" << std::endl;
    }
};

int main()
{
    ThreadFunc m_ThreadFunc;

    std::thread thread(&ThreadFunc::ThreadFunction,&m_ThreadFunc);

    thread.join();

    getchar();
    return 0;
}

3 Lambda表达式/匿名函数作为线程函数

代码示例:

#include <iostream>
#include <thread>


int main()
{
    std::thread thread{ [] {std::cout << "线程函数被启动" << std::endl; } };

    thread.join();

    getchar();
    return 0;
}

未完待续。

如果您觉得对您有帮助,可以请站长喝一杯咖啡哦!

记得在赞赏备注里写上您的昵称

您可在本站资助名单中查看你的打赏记录哦!

支付宝扫一扫

微信扫一扫

金额随意,礼清义重

当前分类随机文章推荐

全站随机文章推荐

关于本站站长 StubbornHuang
C++11/std::thread – 可作为线程函数的几种方式总结-StubbornHuang Blog纵使晴明无雨色,入云深处亦沾衣。