#include "iostream"
#include "thread"
#include "windows.h"
using namespace::std;
void func(int bh,const string & str)
{
for (int ii = 0; ii < 10; ++ii) {
cout<<"第"<<ii<<"次表白:亲爱的"<<bh<<"号。"<<str <<endl;
Sleep(1000);//休眠一秒。
}
}
//仿函数
class mythread1
{
public:
void operator()(int bh,const string & str)
{
for (int ii = 0; ii < 10; ++ii) {
cout<<"第"<<ii<<"次表白:亲爱的"<<bh<<"号。"<<str <<endl;
Sleep(1000);//休眠一秒。
}
}
};
class mythread2
{
public:
static void func(int bh,const string & str)
{
for (int ii = 0; ii < 10; ++ii) {
cout<<"第"<<ii<<"次表白:亲爱的"<<bh<<"号。"<<str <<endl;
Sleep(1000);//休眠一秒。
}
}
};
class mythread3
{
public:
void func(int bh,const string & str)
{
for (int ii = 0; ii < 10; ++ii) {
cout<<"第"<<ii<<"次表白:亲爱的"<<bh<<"号。"<<str <<endl;
Sleep(1000);//休眠一秒。
}
}
};
int main()
{
//lambda函数创建线程。
auto f=[](int bh,const string & str)
{
for (int ii = 0; ii < 10; ++ii) {
cout<<"第"<<ii<<"次表白:亲爱的"<<bh<<"号。"<<str <<endl;
Sleep(1000);//休眠一秒。
}
};
mythread3 myth;
thread t1(func,1,"我是一傻傻鸟。");
thread t2(func,2,"我是一傻傻鸟。");
thread t3(f,3,"我是一傻傻鸟。");
thread t4(mythread1(),4,"我是一傻傻鸟。");
thread t5(mythread2::func,5,"我是一傻傻鸟。");
thread t6(&mythread3::func,myth,6,"我是一傻傻鸟。");
cout<<"任务开始。\n";
for (int ii=0;ii<10;ii++) {
cout<<"执行任务中.......\n";
Sleep(1000);//假设执行任务的需要的时间。
}
cout<<"任务完成。\n";
t1.join();//回收线程t1的资源。
t2.join();//回收线程t2的资源。
t3.join();//回收线程t3的资源。
t4.join();//回收线程t4的资源。
t5.join();//回收线程t5的资源。
t6.join();//回收线程t6的资源。
return 0;
}
任务开始。
第0次表白:亲爱的1号。我是一傻傻鸟。
第0次表白:亲爱的6号。我是一傻傻鸟。
第0次表白:亲爱的5号。第0次表白:亲爱的执行任务中…….
我是一傻傻鸟。
第0次表白:亲爱的3号。我是一傻傻鸟。
第04号。我是一傻傻鸟。
次表白:亲爱的2号。我是一傻傻鸟。
第第1次表白:亲爱的4号。我是一傻傻鸟。
第1次表白:亲爱的3第1第11次表白:亲爱的1第1号。我是一傻傻鸟。
执行任务中…….
号。我是一傻傻鸟。
次表白:亲爱的2次表白:亲爱的5次表白:亲爱的6号。我是一傻傻鸟。
号。我是一傻傻鸟。
号。我是一傻傻鸟。
第2次表白:亲爱的4号。我是一傻傻鸟。
第2次表白:亲爱的3第2次表白:亲爱的2第2次表白:亲爱的6第2次表白:亲爱的1第2号。我是一傻傻鸟。
号。我是一傻傻鸟。
号。我是一傻傻鸟。
次表白:亲爱的5号。我是一傻傻鸟。
执行任务中…….
号。我是一傻傻鸟。
第3次表白:亲爱的4号。我是一傻傻鸟。
第3次表白:亲爱的3号。我是一傻傻鸟。
第3次表白:亲爱的6号。我是一傻傻鸟。
第3次表白:亲爱的1号。我是一傻傻鸟。
第3次表白:亲爱的2号。我是一傻傻鸟。
第3次表白:亲爱的5号。我是一傻傻鸟。
执行任务中…….
第4次表白:亲爱的4号。我是一傻傻鸟。
执行任务中…….
第4第4第4第4次表白:亲爱的6号。我是一傻傻鸟。
第4次表白:亲爱的5号。我是一傻傻鸟。
次表白:亲爱的2次表白:亲爱的1次表白:亲爱的3号。我是一傻傻鸟。
号。我是一傻傻鸟。
号。我是一傻傻鸟。
第5次表白:亲爱的4号。我是一傻傻鸟。
执行任务中…….
第5第5次表白:亲爱的6号。我是一傻傻鸟。
次表白:亲爱的5号。我是一傻傻鸟。
第5次表白:亲爱的3号。我是一傻傻鸟。
第5次表白:亲爱的2号。我是一傻傻鸟。
第5次表白:亲爱的1号。我是一傻傻鸟。
第6次表白:亲爱的4号。我是一傻傻鸟。
第6次表白:亲爱的6号。我是一傻傻鸟。
第6第6第6次表白:亲爱的3次表白:亲爱的2次表白:亲爱的5执行任务中…….
第6号。我是一傻傻鸟。
次表白:亲爱的1号。我是一傻傻鸟。
号。我是一傻傻鸟。
号。我是一傻傻鸟。
第7次表白:亲爱的4号。我是一傻傻鸟。
第7第7执行任务中…….
第7次表白:亲爱的6号。次表白:亲爱的2号。我是一傻傻鸟。
我是一傻傻鸟。
第7次表白:亲爱的1号。第7次表白:亲爱的5我是一傻傻鸟。
号。我是一傻傻鸟。次表白:亲爱的3号。
我是一傻傻鸟。
第8次表白:亲爱的4号。我是一傻傻鸟。
执行任务中…….
第8次表白:亲爱的6号。我是一傻傻鸟。
第8次表白:亲爱的2号。我是一傻傻鸟。
第8第8第8次表白:亲爱的3次表白:亲爱的5次表白:亲爱的1号。我是一傻傻鸟。号。我是一傻傻鸟。号。我是一傻傻鸟。
第9次表白:亲爱的4号。我是一傻傻鸟。
第9执行任务中…….
第9次表白:亲爱的6次表白:亲爱的2号。我是一傻傻鸟。
号。我是一傻傻鸟。
第9次表白:亲爱的1号。我是一傻傻鸟。
第9次表白:亲爱的5第9号。我是一傻傻鸟。
次表白:亲爱的3号。我是一傻傻鸟。
任务完成。
发表回复