关于线程函数
请教一下,如何在开启线程之后变更该线程要运行的线程函数?
[最优解释]
一般是先指向一个固定函数,在这个函数内再调用一个函数指针,这个函数指针可以进行修改成其它函数。
线程池都是这么用的。
[其他解释]
线程池
[其他解释]
给你个思路可以用回调函数,要改变函数的时候注入一个新的回调。
[其他解释]
修改线程函数?
如果想实现不同功能的话,用PostThreadMessage就行了
线程函数中写个消息循环
MSG msg;
while(1)
{
if( PeekMessage( &msg, NULL, 0, 0, PM_NOREMOVE ) )
{
if(GetMessage( &msg, NULL, 0, 0 ) )
{
if (msg.message == WM_USER + 1)
func1();
else if (msg.message == WM_USER + 2)
func2();
根据不同的msg调用不同的函数就行了
[其他解释]
这个可以么???
[其他解释]
如果可以程序不就乱了吗?
[其他解释]
汗,我怎么发了两遍。。麻烦妖哥给删个
[其他解释]
我感觉似乎可以。。。当然不太确定
[其他解释]
试一下吧,我觉得差不多是楼上说的这种形式