#include "ThreadBase.h" /* 定义一个继承类,重写 ThreadBase_ThreadLoopFunc */ class MyThread : public ThreadBase { public: void ThreadBase_ThreadLoopFunc(int tInputFlag, void *pInputArg) override { std::string *pTempMSG = (std::string *)pInputArg; for (int tTempN = 0; tTempN < 5; tTempN++) { std::cout << "[子线程] flag=" << tInputFlag << " pTempMSG=" << *pTempMSG << " tTempN=" << tTempN << std::endl; sleep(1); } } }; int main(int argc, char **argv) { MyThread tTempThread; std::string tTempString = "HelloThread"; /* 启动线程 */ std::cout << "[主线程] 创建线程..." << std::endl; tTempThread.ThreadBase_ThreadCreate(123, &tTempString); /* 等待子线程退出 */ tTempThread.ThreadBase_ThreadJoin(); std::cout << "[主线程] 线程已退出" << std::endl; return 0; }