我想创建一个线程,然后立即调用CloseHandle并让线程自行死亡,这样我就不必在'原始'线程中做额外的清理工作(不是说清理本身很难) ,但这意味着我需要避免相当多的额外簿记.
MSDN说在一个线程上调用CloseHandle()不会终止该线程,但我不清楚这是否意味着我真的被允许这样做.
它不仅合理,而且不是手柄泄漏.通常我会在创建线程后立即关闭它,除非我在其他地方需要它.
CreateThread函数使引用计数+2,CloseHandle只引用引用计数-1,当线程函数完成时,系统将引用计数-1.