CloseHandle的功能是關閉一個打開的對象句柄,該對象句柄可以是線程句柄,也可以是進程、信號量等其他內核對象的句柄,而ExitThread的功能是終止一個線程,它所接受的參數是一個線程的退出碼。?
??
???? 通過調用CloseHandle可以告知系統,已經完成了對某一內核對象的操作,該函數首先檢查調用進程的句柄表,來確認進程是否對該句柄所指向的對象有訪問權,如果句柄無效則返回FALSE,如果有效,系統將得到該內核對象的數據結構的地址,把結構中的使用計數成員減1,如果計數變為0,則將從內核中釋放該內核對象。?
??
???? 如果計數還未到0,就意味著還有其他的進程在使用這個內核對象,那么它就不會被釋放。?
??
???? ExitThread是推薦使用的結束一個線程的方法,當調用該函數時,當前線程的棧被釋放,然后線程終止,相對于TerminateThread函數來說,這樣做能夠更好地完成附加在該線程上的DLL的清除工作。?
其實可以通過這個來避免c++里面的內存泄露