我有一个后台线程,用于与GUI分开处理,线程之间的一切工作都很正常。但是当我关闭应用程序时,程序“关闭”了,但没有终止进程。似乎后台线程正在保持程序运行。
我已经设置了“myThreadInstance.IsBackground = true;”,我认为这将要求C#在它被杀死时终止它。
我在Visual Studio(2010,使用.NET 4.0)中测试所有内容,在第一次构建后,其余所有构建都会失败,因为exe仍在使用中,因此无法覆盖它。在任务管理器中查看,它还在那里。杀死Visual Studio会释放vbhost进程,从而释放我的exe。杀死我的exe进程,会使vbhost在一两秒钟内重新生成它。
我已经设置了“myThreadInstance.IsBackground = true;”,我认为这将要求C#在它被杀死时终止它。
我在Visual Studio(2010,使用.NET 4.0)中测试所有内容,在第一次构建后,其余所有构建都会失败,因为exe仍在使用中,因此无法覆盖它。在任务管理器中查看,它还在那里。杀死Visual Studio会释放vbhost进程,从而释放我的exe。杀死我的exe进程,会使vbhost在一两秒钟内重新生成它。
Thread.Abort
中止的,这可以通过足够的权限阻止。我也不确定如果执行非托管代码时线程会快速中止吗?这两种情况可能吗? - Steven Sudit