当进程结束后,内核对象一定会被销毁吗?
MSDN关于CloseHandle()这个函数有这么一段解释。
Closing a thread handle does not terminate the associated thread.
To remove a thread object, you must terminate the thread, then clo-
se all handles to the thread.
关闭线程句柄不一定销毁相关联的线程对象。要移除线程对象,你必须摧毁线程,然后关闭这个线程的所有句柄。
从这一句话可以看出来,线程结束后,线程对象不一定被移除,还要关
闭所有的关联到这个线程的线程句柄才可以。
现在我是这么认为的,一个内核对象要被销毁,当且仅当某次调用Clos-
eHandle内核对象的计数器减1之后,这个内核对象的计数器变为0的时
候,才会被关闭。其他任何情况(关机不算),这个内核对象都不会被关
闭。
欢迎随时指正。谢谢。