0
我有一个WPF应用程序,做了很多跟一个远程服务器的,所以要保持界面很好,响应速度很快,我把这些操作放在第二个线程中。有一些可能的但不太可能的情况,那个线程只会挂起,永远阻塞。有没有简单的方法让我实现一个“取消”按钮,不涉及调用thread.Abort()?我看到很多人建议不要使用它,而且我不想留下任何未发布的资源。也许一种强制线程抛出异常的方法?什么是实行“停止/取消”按钮来停止一个线程的好方法(即ins't后台工作)
我在标题中注明,这不是后台工作,因为程序不使用这些。它已经用普通的旧线程编码了。
如果您不希望线程挂起,请修复这些情况,以免发生这种情况。 – 2012-04-25 07:19:50
什么情况下,“只是挂起,永远阻止”?修复这些! – 2012-04-25 07:21:12
@DavidSchwartz如果程序本身无法确定是否出现问题,那么需要用户做出决定。此外,在其他情况下,当程序需要停止线程本身(如连接错误,它需要重新建立连接并重新启动线程)我想用同样的取消方法 – cost 2012-04-25 07:24:48