标签:require ack back 程序 一个 star 关闭 主线程 .net
单线程 :只有一个线程(主线程),弊端,一个时间只能调用一个函数方法,如果正在打印时候去关闭程序,会关闭不了,出现假死现象
线程分为前台线程和后台线程
默认创建的都是前台线程
前台线程: 只有多有的前台线程都关闭了才能完成程序的关闭
后台线程: 只要所有的前台线程结束,后台线程自动结束
解析:创建的前台线程,在主线程关闭后,仍然可以继续执行,后台线程随着前台的关闭而关闭
1.多线程,创建一个线程
1 static void Main(string[] args) 2 { 3 //创建一个线程,目的是执行Test()方法 4 Thread th = new Thread(Test); 5 //start(); 标记这个线程准备就绪了,可以随时被执行了。 7 th.IsBackground = true; //设置为后台线程 8 // Control.InvokeRequired 9 th.Start(); 10 11 Console.ReadKey(); 12 } 13 14 15 public static void Test() 16 { 17 18 }
设置线程是前台线程,后台线程,默认是前台线程
设置为true 是后台线程,FALSE是前台线程
th.IsBackground = true; //设置为后台线程
终止线程,
th.Abort();
如果程序终止后不可以再开启,会抛出异常,线程可能已经开启或被终止
th.Abort();
th.Start();
如果新线程,要访问主线程的资源,在.Net下不允许跨线程的访问
解决:取消跨线程的访问
休眠 1000毫秒,休眠的是所在的当前线程
Thread.Sleep(1000);
标签:require ack back 程序 一个 star 关闭 主线程 .net
原文地址:https://www.cnblogs.com/CeasarH/p/9120953.html