关于进程的结束和重启

现在想实现的是 为一个运行很长的函数开一个线程,然后如果收到新的安排就要结束这个线程,重新运行这个函数。用beginthread开了线程,结果用TerminateThread结束时,在main里后续的语句执行不了了。大家有什么办法吗

用thread.suspend挂起线程
用thread.resume重启线程