看孙鑫老师VC++视频教程笔记 之 多线程编程(一)
来源:互联网 发布:mac 免费系统清理软件 编辑:程序博客网 时间:2024/04/29 10:44
一、创建一个线程
HANDLE CreateThread( LPSECURITY_ATTRIBUTES lpThreadAttributes, SIZE_T dwStackSize, LPTHREAD_START_ROUTINE lpStartAddress, LPVOID lpParameter, DWORD dwCreationFlags, LPDWORD lpThreadId );
参数1:指向SECURITY_ATTRIBUTES结构体的指针。这里可以设置为NULL,使用缺省的安全性。
参数2:指定初始提交的栈的大小,以字节为单位。系统会将这个值四舍五入为最近的页面。
(页面:是系统管理内存时使用的内存单位,不同的CPU其页面大小也是不同的。X86
使用的页面大小是4KB。当保留地址空间的一个区域时,系统要确保该区域的大小是
系统的页面大小的倍数)
如果该值是0或者小于缺省提交大小,则使用和调用线程一样的大小。
参数3:指向LPTHREAD_START_ROUTINE(应用程序定义的函数类型)的指针。这个函数将被线程
执行,表示了线程的起始地址。看线程入口函数ThreadProc。
参数4:指定传递给线程的单独的参数的值。
参数5:指定控制线程创建的附加标记。如果CREATE_SUSPENDED标记被指定,线程创建后处于暂停
状态不会运行,直到调用了ResumeThread函数。
如果该值是0,线程在创建之后立即运行。
参数6:[out]指向一个变量用来接收线程的标识符。创建一个线程时,系统会为线程分配一个ID号。
Windows NT/2000:如果这个参数是NULL,线程的标识符不会返回。
Windows 95/98 :这个参数不能是NULL
如果函数执行成功,返回新线程的句柄。
二、编写线程函数
可参考ThreadProc:
DWORD WINAPI ThreadProc( LPVOID lpParameter );类型和参数要匹配,函数名任意。三、关闭线程句柄BOOL CloseHandle( HANDLE hObject );注意:关闭句柄并没有终止新创建的线程。只是表示对新创建的线程的引用不敢兴趣,系统会递减新线程的线程内核对象的使用计数。当使用计数为0的时候,系统就会释放线程内核对象。如果在主线程中没有关闭线程的句柄,始终都会保留一个引用。这样线程内核对象的引用计数就不会为0。即使新线程执行完毕,线程内核对象也不会被释放,只有等到进程终止的时候系统才会为残留的对象做清理工作。所以应该在不再使用线程的句柄的时候将其关闭掉,让线程的线程内核对象的引用计数减1。四、暂停线程的执行当线程暂停执行的时候,也就是表示它放弃了执行的权力。操作系统会从等待运行的线程队列中选择一个线程来运行。新创建的线程就可以得到运行的机会。可以使用函数Sleep:void Sleep( DWORD dwMilliseconds //sleep time 以毫秒为单位 );暂停当前线程指定时间间隔的执行。
- 看孙鑫老师VC++视频教程笔记 之 多线程编程(一)
- 看孙鑫老师VC++视频教程笔记 之 多线程编程(一)
- 看孙鑫老师VC++视频教程笔记 之 多线程编程(二)
- 看孙鑫老师VC++视频教程笔记 之 多线程编程(三)
- VC多线程编程学习笔记(一)
- VC视频教程笔记一
- 孙鑫VC视频教程笔记之第十五课“多线程与聊天室”
- 孙鑫VC视频教程笔记之第十五课“多线程与聊天室”
- 孙鑫vc视频教程笔记(一) 之 VC++ MFC属性页使用说明
- VC多线程编程一(创建多线程)
- VC多线程编程(转载) VC多线程编程(一)
- 观看 孙鑫 老师的《VC++ 深入编程视频教程》日记
- 孙鑫老师VC视频教程笔记1-10课
- VC多线程编程一
- VC多线程编程(一)
- VC多线程编程 (一)
- VC 多线程编程 一
- VC学习笔记之‘HTTP编程’(一)
- P2P普及系列之四:半分布式结构
- 道德经第三十八章
- Scope && Normative references
- net start命令下的Windows 服务中文解释
- Terms, definitions, and symbols
- 看孙鑫老师VC++视频教程笔记 之 多线程编程(一)
- Conformance
- VC中调用其他应用程序的方法(函数) WinExec,ShellExecute ,CreateProcess
- MoveFile, MoveFileEx, CopyFile的几点心得(Visual C++ 6.0)
- 《小窗幽记》卷三 集峭
- 《小窗幽记》卷四 集灵
- 基于C/S结构后门下载文件的功能模
- 《小窗幽记》卷六 集景
- 简单的任务管理器