线程怎么退出-外部

线程如何退出---外部
网上很多关于线程退出,都是在线程内部

如果,要在外部管理这些线程,该怎么做呢

能不能用TerminateThead----退出,在用closehandle()释放资源呢?
===========================================================


正验证中……

如果有大侠已经得出了结论,请赐教下,多谢先了

还有个问题:
TerminateThead,很多人都不推荐使用,

那什么时候用它呢?



------解决方案--------------------
在线程内部退出是唯一让线程“安全”退出得方法,任何其他方法都不可能做到。如果你要做线程管理,你也是通知线程退出,而不是直接替它退出。

TerminateThread是如果可能就不用得方法。也就是说:在一切可能得情况下,都不用这个。
------解决方案--------------------
探讨
在线程内部退出是唯一让线程“安全”退出得方法,任何其他方法都不可能做到。如果你要做线程管理,你也是通知线程退出,而不是直接替它退出。

TerminateThread是如果可能就不用得方法。也就是说:在一切可能得情况下,都不用这个。

------解决方案--------------------
同上,让线程自己return最安全。。。
------解决方案--------------------
安全退出.
------解决方案--------------------
探讨
同上,让线程自己return最安全。。。

------解决方案--------------------
探讨
我也同意

但是,很多时候,线程退出不一定就是return

线程有时可能在你不能控制的情况下或不知情下或异常退出,而这个线程是个非常重要的功能模块,

该如何解决呢?你总不能让用户发现不能用这个功能的时候,自己去手动重启程序吧?

就算你能够扑捉到这个异常,打印个错误的日志,但程序的这个功能还是停止了,

特别的,如果这个功能处于在一个服务程序中,你更不能重启……

------解决方案--------------------
探讨

异常退出的线程的状态,也能用GetExitCodeThread检测到吗?