delphi CloseHandle的解释

2018-10-30

delphi CloseHandle的解释


CreateThread启动了一个线程,同时产生一个句柄让你好操纵这个线程,如果你不要用这个句柄了就CloseHandle关掉它。
调用这个CloseHandle并不意味着结束线程,而是表示不关心此句柄的状态了,也就无法控制子进程的线程了。如果需要关心,可以在子进程结束后再CloseHandle,但一定得CloseHandle。
操作系统内核管理内核对象的生命期,应用程序通过CloseHandle操作内核对象的引用计数,当引用计数由1降为0时,内核负责销毁相应的内核对象。进程和线程都有一个内核对象与它们对应,操作系统通过内核对象管理进程和线程。当CreateThread被调用时,系统创建一个线程内核对象。该线程内核对象不是线程本身,而是操作系统用来管理线程的较小的数据结 构。这与进程和进程内核对象之间的关系是相同的。调用CreateThread可使系统创建一个线程内核对象。该对象的初始使用计数 是2(在线程停止运行和从CreateThread返回的句柄关闭之前,线程内核对象不会被撤销)。

阅读42