win32线程编程思路
来源:互联网 发布:ubuntu停止当前命令 编辑:程序博客网 时间:2024/05/18 01:39
1.创建线程时先判断线程是否已经被创建或者运行,代码:
if (m_hThreadHandle==NULL) return false;
if (WaitForSingleObject(m_hThreadHandle,0)!=WAIT_TIMEOUT) return false;
关于函数WaitForSingleObject,请参考链接:点击打开链接
这其中涉及到线程信号的概念:如果线程结束,则有信号,线程在运行,则没有信号。
2.创建线程,调用函数_beginthreadex,判断通过句柄线程是否创建成功
<span style="white-space:pre"></span>tagThreadParameter ThreadParameter;ZeroMemory(&ThreadParameter,sizeof(ThreadParameter));//设置变量ThreadParameter.bSuccess=false;ThreadParameter.pServiceThread=this;ThreadParameter.hEventFinish=CreateEvent(NULL,FALSE,FALSE,NULL);//效验状态ASSERT(ThreadParameter.hEventFinish!=NULL);if (ThreadParameter.hEventFinish==NULL) return false;//启动线程m_bRun=true;m_hThreadHandle=(HANDLE)::_beginthreadex(NULL,0,ThreadFunction,&ThreadParameter,0,&m_uThreadID);3.结束线程,关闭句柄,设置线程ID = 0。
//等待事件WaitForSingleObject(ThreadParameter.hEventFinish,INFINITE);CloseHandle(ThreadParameter.hEventFinish);4.线程执行函数:OnEventThreadRun()中增加while(true)死循环,处理响应的线程模块逻辑。
0 0
- win32线程编程思路
- WIN32线程编程
- win32 API 线程编程
- Win32多线程编程(2) — 线程控制
- Win32多线程编程 — 线程局部存储
- Win32多线程编程(2) — 线程控制
- Win32多线程编程(2) — 线程控制
- Win32 线程
- Win32线程
- Win32多线程编程(3) — 线程同步与通信
- Win32多线程编程(5) — 线程局部存储
- Win32多线程编程 — 线程同步与通信
- Win32核心编程 读书笔记二 进程线程的注意事项
- Win32多线程编程(3) — 线程同步与通信
- Win32多线程编程(5) — 线程局部存储
- Win32多线程编程 — 线程同步与通信
- Win32编程
- Win32编程
- 欢迎使用CSDN-markdown编辑器
- Java编程之路相关书籍(三个维度)
- TopCoder SRM 663 Div2 Problem 500 - ABBA (思维)
- 【BZOJ】1014 仪仗队
- WPF 触发器Triggers
- win32线程编程思路
- SVM
- Eclipse Java注释模板设置详解
- C/C++校招笔试面试经典题目总结八
- 直线,曲线,折线分割平面以及平面分割空间问题
- [Wireshark]Sniffing with Wireshark(or tshark) as a Non-Root User on CentOS
- OC中initialize&& load && init方法
- 日经春秋 20150724
- 求两个升序序列的中位数