读书人

关于线程函数解决思路

发布时间: 2013-01-01 14:04:19 作者: rapoo

关于线程函数
请教一下,如何在开启线程之后变更该线程要运行的线程函数?
[解决办法]
这个可以么???关于线程函数解决思路
[解决办法]
如果可以程序不就乱了吗?
[解决办法]
一般是先指向一个固定函数,在这个函数内再调用一个函数指针,这个函数指针可以进行修改成其它函数。
线程池都是这么用的。
[解决办法]
线程池
[解决办法]
给你个思路可以用回调函数,要改变函数的时候注入一个新的回调。
[解决办法]
修改线程函数?
如果想实现不同功能的话,用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调用不同的函数就行了

读书人网 >C++ Builder

热点推荐