多线程学习笔记
来源:互联网 发布:github ssh项目源码 编辑:程序博客网 时间:2024/06/16 20:21
windows编程时若需要使用多线程技术,则需要先创建线程,然后使用这些线程执行相对应的功能.在VC程序中使用多线程,则可以调用API函数CreateThread()函数创建线程.
CreateThread()原型如下:
HANDLE CreateThread(){LPSECURITY_ATTRIBUTESlpThreadAttributes,DWORDdwStackSize,LPTHREAD_START_ROUTINElpStartAddress,LPVOIDlpParameter,DWORDdwCreationFlags,LPDWORDlpThreadId};
该函数用于创建一个线程,并返回该线程的句柄,各参数含义如下:
lplpThreadAttributes是一个指向结构体SECURITY_ATTRIBUTES的指针,表示指定该线程的安全属性.该参数可以设置为NULL,表示创建线程时使用默认的安全属性.
dwStackSize指定线程初始化时地址空间的大小.如果指定为0时则表示创建的新线程的地址空间与调用该函数的线程地址空间一样.
lpStartAddress是指定该线程的线程函数地址.当线程创建成功后,新建线程将调用该函数执行对应功能.
lpParameter表示将要传递给新建线程的命令行参数.新建线程可以根据该参数的不同而执行不同的功能.
dwCreationFlags用于指定线程建立后是否立即运行.其值有以下两个:
CREATE_SUSPENDED线程创建成功后暂停运行
0 线程创建成功后立即运动
lpThreadId 表示新建线程的ID号,一般设置有NULL.
示例代码:
#include <windows.h>#include <stdio.h>DWORD WINAPI myfun(LPVOID lpParameter);int main(){HANDLE h1;h1 = CreateThread(NULL, 0, fun1, NULL, 0, NULL);CloseHandle(h1);system("pause");return 0;}DWORD WINAPI myfun(LPVOID lpParameter){printf("线程已经运行");}
0 0
- Java多线程学习笔记
- 多线程学习笔记
- 多线程学习笔记(一)
- 多线程学习笔记(二)
- 多线程学习笔记(一)
- 多线程学习笔记 一
- 多线程学习笔记 二
- 多线程学习笔记 三
- 多线程学习笔记 四
- 多线程学习笔记
- 多线程学习笔记
- 多线程的学习笔记
- 多线程学习笔记
- 多线程学习笔记
- 多线程学习笔记
- C#多线程学习笔记
- 多线程学习笔记:lock
- 多线程学习笔记
- 堆的介绍与应用
- golang报错: all goroutines are asleep
- 【Java之网络编程】3.UDP
- [BFS]199. Binary Tree Right Side View
- rt带宽限制浅析
- 多线程学习笔记
- 关于安卓动态加载的一点学习曲折
- 禁止iOS自动识别手机号
- SSL P2640 2016东莞市特长生考试 子数整数
- 最小费用最大流
- UVa Master-Mind Hints(猜数字+计数)
- HIT 2662 Pieces Assignment
- Linux普通用户下进入root方式
- MPI学习笔记及心得(持续更新)