首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

有个想法,希望有人来提提想法,关于关闭线程有关问题

2012-09-15 
有个想法,希望有人来提提想法,关于关闭线程问题有一个管理线程,维护多个线程,并且维持一定的空闲线程数,也

有个想法,希望有人来提提想法,关于关闭线程问题
有一个管理线程,维护多个线程,并且维持一定的空闲线程数,也就是会查看空闲线程数,少于一个区间是就去创建。
这样这个管理线程就不会去等待子线程返回,然后关闭其线程。应该是不能这么做。如果能做该是怎么做呢?
我的想法是,在管理线程创建子线程时,给出传入的参数,以结构体的形式将其句柄传入,其实也可以在本子线程中自己获取句柄,然后就是在子线程中定义一个局部对象,在该对象的析构函数中,关闭句柄。这样子,就当子线程退出时,顺便把自己的句柄也关闭了。不知道这样行不行? 
还有就是局部对象的生命域,就是在子线程的生存期,应该局部对象想析构,然后子线程退出,而我先把其句柄给close掉了,这样....好像有问题
该如何呢?

[解决办法]
1. 当然可以维持空闲线程数, 少了就创建. 为什么不能呢?
2. 线程里面调用 GetCurrentThread 就可以取到句柄. 干嘛要把句柄传进去?
3. 关闭线程句柄并不会导致线程终止, 如果管理线程不关心之后的操作, CreateThread 后马上就可以 CloseHandle 关闭它. 用不着等什么线程析构时去关闭.

热点排行