我正在尝试创建此函数以便在 X 时间后执行另一个函数:
void execAfter(double time, void *(*func)(void *), t_params *params);
我做了一个线程封装和一个时间封装(对象线程和时间)。
我想用伪代码做什么:
Call execAfter
instantiate Thread
call thread->create(*funcToExec, *params, timeToWait)
[inside thread, leaving execAfter]
instanciate Time object
wait for X time
exec funcToExec
delete Time object
[leaving thread, back to execAfter]
delete Thread object <---- probleme is here, see description below.
return ;
如何正确删除我的 Thread 对象,而不会阻塞其余的执行,也不会冒险在所需时间过去之前删除它。
我很迷茫,任何帮助表示赞赏!