请教大家一些关于线程的问题,请多指导,谢谢HANDLE handle = CreateThread(threadFunc);
uint threadFunc(LPVOID)
{
..........
handle = NULL;??????????????
这两个是不是等价的
ExitThread(0);
retun 0;
}另关闭线程有几种方法
TermianteThread可以::CloseHandle();在什么时候用
threadFunc里面,或正常结束时需要用吗,谢谢
uint threadFunc(LPVOID)
{
..........
handle = NULL;??????????????
这两个是不是等价的
ExitThread(0);
retun 0;
}另关闭线程有几种方法
TermianteThread可以::CloseHandle();在什么时候用
threadFunc里面,或正常结束时需要用吗,谢谢
关闭线程的方法:
1)当线程函数返回后线程自动终止
2)在线程中通过ExitThread来终止线程。
3)在线程外部通过TermianteThread来强制终止线程,不推荐使用此方法,这么做不能保证线程中操作得完整性。
ExitThread(0);
retun 0;
======================
有一定的区别,ExitThread(0)中的0并不是线程函数的返回值,而退出码,用GetExitCodeThread可以获得。return 0中的0是线程函数的返回值。另关闭线程有几种方法
===============
线程其实正常情况不用特殊方法关闭,这个线程函数结束了,线程也就关闭了。CloseHandle的作用是关闭一个句柄,这个最好用在启动线程的函数里面。另外关闭线程句柄和关闭线程是两事回,关闭了线程句柄也不会对线程造成影响