c++ _beginthread
c++多线程编程1 #include <windows.h>
2 #include <process.h> /* _beginthread, _endthread */
3 #include <iostream>
4
5 using namespace std;
6
7 void show(void *ptr);
8
9 int main(){
10 _beginthread(show, 0, NULL);
11 Sleep(50000);
12 return 0;
13 }
14
15 void show(void *ptr){
16 int i = 0;
17 cout<<"i am in"<<endl;
18 while(++i){
19 if(10 == i){
20 _endthread();
21 }
22 cout<<"i = "<<i<<endl;
23 Sleep(1000);
24 }
25
26 }用__beginthread开始线程,用_endthread结束线程
ps:下面来自百度百科
uintptr_t _beginthread(
void( *start_address )( void * ),
unsigned stack_size,
void *arglist
);
这个是_beginthread()函数原型
参数:
start_address
新线程的起始地址 ,指向新线程调用的函数的起始地址
stack_size
新线程的堆栈大小,可以为0
arglist
传递给线程的参数列表,无参数时为NULL
返回值:
假如成功,函数将会返回一个新线程的句柄,用户可以像这样声明一个句柄变量存储返回值:
HANDLE hStdOut = _beginthread( CheckKey, 0, NULL )。如果失败_beginthread将返回-1。
可以参考msdn:http://msdn.microsoft.com/en-us/library/kdzttdcb(v=vs.80).aspx
文档来源:51CTO技术博客https://blog.51cto.com/u_2498536/3305288
页:
[1]