hThread=CreateThread(NULL,0,FunProc,NULL,0,NULL);
CloseHandle(hThread);如上程序段,CreateThread创建了一个新的线程,为什么接下来一行立即关闭线程句柄,有点疑惑,查了一下好像是和内存泄漏有关,不过不是很清楚,哪位高手能通俗点解释下,谢谢!!
CloseHandle(hThread);如上程序段,CreateThread创建了一个新的线程,为什么接下来一行立即关闭线程句柄,有点疑惑,查了一下好像是和内存泄漏有关,不过不是很清楚,哪位高手能通俗点解释下,谢谢!!
解决方案 »
- CFilaDilog的问题!!!!!!
- 金属拉丝旋钮怎么做?
- ???我用ADO添加时,为什么会出错?
- 关于SafeArray数据类型的应用?急啊?高分相求高手!!
- 在一个DLL中,要做一个和时间相关的触发器
- 对话框的问题!!!
- 如何做软件汉化——就是将软件中的英文菜单,或控键名改成中文!!!(急用,有创意就给分)
- 如何不指定应用程序,直接用文件名打开文件?
- masterz()请问????/
- VS2010 不能给“ActiveX”控件添加“属性”、“事件”
- 分享一个我写的VC/MFC中SQL 2000数据库的分页控件,显示效果为1 2 3 4 5 6 ... 98 99等。
- 用sdk写的魔塔小游戏,欢迎大家测试
创建线程的时候,起始计数为1
CreateThread创建线程之后,这个对象最初的使用计数确实为2
At creation time, the system gives each object
an initial usage count of 1.
createthread创建线程,内核对象的引用计数是2,需要手动调用一次closehandle,引用计数减一,等线程结束后会再减一,减到0了,OS会释放掉这个内核对象。
不过closehandle了后就不能再引用这个线程句柄了。具体细节参考windows核心编程
只是在后来,调用CreateThread之后,计数又增加了1
才成了2