当ThreadStart例程返回时,线程会自动停止
本文关键字:线程 ThreadStart 例程 返回 | 更新日期: 2023-09-27 18:08:28
我创建了一个新线程,并为它分配了一个函数,用ThreadStart执行。下面是一个例子:
this.threadAppPtE = new Thread(new ThreadStart(synchronizeAppPte));
当我分配的函数结束时,线程是否自动停止,或者我必须手动结束它?
http://msdn.microsoft.com/en-us/library/ms686724(v=vs.85).aspx
一个线程执行直到下列事件之一发生:
- 线程调用ExitThread函数
- 进程的任何线程调用ExitProcess函数。
-
线程函数返回。
- 任何线程调用带有该线程句柄的TerminateThread函数
- 任何线程调用带有进程句柄的TerminateProcess函数。
是,线程将自动终止,只要它没有被阻塞并完成它的工作。显然,您首先需要调用threadAppPtE.Start()
来启动它。
在线程还没有完成的地方重新加入线程是比较复杂的。有一篇很好的文章叫做创建和终止线程,它可能有助于更好地解释这个过程。