小智 6
默认情况下,线程是前台线程,这意味着只要它们中的任何一个正在运行,它们就会使应用程序保持活动状态。C# 还支持后台线程,它不会让应用程序自己保持活动状态——一旦所有前台线程都结束就立即终止。
小智 5
有两种类型的线程 -
前台线程
后台线程
每当我们打开任何应用程序时,主 UI 线程都是前台线程类型。这是默认的线程类型。假设当我们创建任何新线程时。默认情况下,线程当前类型是前台本身。如果你想改变线程的类型,你必须执行threadName.IsBackground = true;。
现在主要故事开始了。有什么不同?为什么我们需要这两种类型?
前台线程:假设我们正在创建一个线程ThreadA。如果我们需要线程ThreadA在所有其他线程都中止的情况下继续执行,即使我们的主 UI 线程不再处于活动状态,那么在这种情况下我们必须保持线程类型为前台。因此,如果您保留线程前台类型,那么即使您关闭应用程序,前台线程ThreadA也会继续运行。您也可以在任务管理器中跟踪它。
后台线程:现在,如果您将线程类型更改为后台线程,那么该线程将依赖于其他前台线程。因为在这种情况下,如果没有任何前台类型的线程在运行,那么所有后台线程都将不得不被强制中止。
| 归档时间: |
|
| 查看次数: |
8880 次 |
| 最近记录: |