winfrom前台线程和后台线程区别【转载】
载自https://www.cnblogs.com/zhangzhiping35/p/11058671.html
1 public partial class Form1 : Form 2 { 3 public Form1() 4 { 5 InitializeComponent(); 6 } 7 private void Say() 8 { 9 for (int i = 0; i < 100; i++) 10 { 11 MessageBox.Show( "我演,我卖力的演!\n\r把主窗口关了,你看我还在不在?" + i.ToString()); 12 } 13 } 14 15 private void button1_Click_1(object sender, EventArgs e) 16 { 17 //前台线程和后台线程唯一区别就是:应用程序必须运行完所有的前台线程才可以退出; 18 //而对于后台线程,应用程序则可以不考虑其是否已经运行完毕而直接退出, 19 //所有的后台线程在应用程序退出时都会自动结束。 20 MessageBox.Show("点击按钮启动了一个前台线程。\r\n前台线程:“既然我上台了,我一定要表演完,不然我跟你没完!”"); 21 //前台线程 22 Thread t1 = new Thread(Say); 23 t1.IsBackground = false; 24 t1.Name = "前台线程"; 25 t1.Start(); 26 } 27 28 private void button2_Click_1(object sender, EventArgs e) 29 { 30 MessageBox.Show("点击按钮启动了一个后台线程。\r\n后台线程:“既然我没上台,我受制于应用程序,它关了我就自动关了(舞台都关了,我在后台再干活就没意思了)!”"); 31 //后台线程 32 Thread t2 = new Thread(Say); 33 t2.IsBackground = true; 34 t2.Name = "后台线程"; 35 t2.Start(); 36 } 37 }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构