C++ multiple threads pass arguments

#include <iostream>

using namespace std;

class bgClass
{
public:
    void print1()
    {
        cout << "This is print1()" << endl;
    }

    void print2()
    {
        cout << "This is in print2()" << endl;
    }

    void operator()() const
    {
        cout << "This is print1()" << endl;
        cout << "This is in print2()" << endl;
    }
};

1.

#include "Model/bgClass.cpp"

void bgClass40();
void bgClass41();
void bgClass42();
void bgClass43();

int main(int args, char **argv)
{
bgClass43();
}

void bgClass43()
{
bgClass40();
bgClass41();
bgClass42();
}

void bgClass42()
{
bgClass bgc;
thread t1(bgc);
t1.join();
cout<<"In void bgClass42()"<<endl<<endl;
}

void bgClass41()
{
thread t1{bgClass()};
t1.join();
cout<<"In void bgClass41()"<<endl<<endl;
}

void bgClass40()
{
thread t1{bgClass()};
t1.join();
cout<<"In void bgClass40()"<<endl<<endl;
}

 

Compile

g++ -std=c++2a -I. *.cpp ./Model/*.cpp -o h1 -luuid -lpthread -lmysqlcppconn;

Execute

./h1

 

 

 

posted @ 2022-07-03 20:46  FredGrit  阅读(15)  评论(0编辑  收藏  举报