![]() |
1
1
中止线程通常是最后的手段。原因是它会引起很多意想不到的副作用。最佳实践是允许工作线程在预定的安全点优雅地结束。这可以用许多不同的方法正确地完成。最简单的方法之一是设置一个标志,指示工作线程应该开始关闭。
如果你
如果要中止线程,则始终可以保存对
|
![]() |
2
1
可以停止(中止)和挂起.net中的另一个线程,但是这两种方法都不是特别可取的。 一般认为打电话是不好的线程。中止. 更安全的做法是通知在另一个线程中运行的代码是时候中止了,让它自己在一个安全点退出。假设MSDN文档只声明在线程上调用Abort()通常会中止线程。这应该是一个信号,表明API真的不打算在结果重要时使用。 挂起线程至少和中止线程一样有害——如果它持有锁,挂起它可能会导致死锁。即使您的代码不包含显式锁,.net运行时也有许多可能给您带来麻烦的幕后操作(例如用于类初始化)。因此,微软不赞成线程。挂起几年前。
|
![]() |
A B · C#Excel自动调整列避免长文本时出错 5 月前 |
![]() |
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 5 月前 |
![]() |
Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 5 月前 |
|
Sei · Avalonia/WPF将路由器传递到控制模板 6 月前 |