1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
#include<iostream>
#include<thread>
#include<windows.h>
#include<vector>
using
namespace
std;
using
namespace
std::this_thread;
void
Msg()
{
MessageBox(0,L
"线程启动"
,L
"32"
,0);
}
void
MsgA(
int
num)
//线程玩法2222
{
std::cout<<get_id() <<
"num="
<< num << endl;
}
void
main()
//线程玩法2222
{
vector<
thread
*>threads;
for
(
int
i = 0;i < 10;i++)
{
threads.push_back(
new
thread
(MsgA,5));
//创建线程 地址存在vector
}
for
(
auto
th : threads)
//创建完在执行
{
th->join();
}
cin.get();
}
int
main1445()
//线程玩法111 //改名了
{
auto
n =
thread
::hardware_concurrency();
cout <<
"You CPU is "
<< n << endl;
//坚持CPU核心
cout <<
"You CPU thread "
<< get_id() << endl;
//获取线程ID
//创建线程
thread
threadl(Msg);
thread
thread2(Msg);
threadl.join();
//执行 必须等待执行
thread2.join();
//执行
getchar
();
return
0;
}
|
本文转自超级极客51CTO博客,原文链接:http://blog.51cto.com/12158490/1879080,如需转载请自行联系原作者