单线程简介_什么是单线程和多线程

单线程简介_什么是单线程和多线程单线程顾名思义,就是只有一个线程,默认情况下,系统为应用程序分配一个主线程,该线程执行程序中以Main方法开始和结束的代码。线程具有生命周期,它包含3个状态,分别为出生状态、就绪状态和运行状态。出生状态就是用户在创建线程时处于的状态,在用户使用该线程实例调用Start方法之前,线程都处于出生状态;当

大家好,欢迎来到IT知识分享网。

单线程顾名思义,就是只有一个线程,默认情况下,系统为应用程序分配一个主线程,该线程执行程序中以Main方法开始和结束的代码。
线程具有生命周期,它包含3个状态,分别为出生状态、就绪状态和运行状态。

出生状态就是用户在创建线程时处于的状态,在用户使用该线程实例调用Start方法之前,线程都处于出生状态;当用户调用Start方法后,线程处于就绪状态(又被称为可执行状态);当线程得到系统资源后就进入运行状态。
一旦线程进入可执行状态,它会在就绪与执行状态下辗转,同时也有可能进入等待、休眠、阻塞或死亡状态。当处于运行状态下的线程调用Thread类中Suspend方法,该线程处于等待状态,进入等待状态的线程必须调用Thread类中的Resume方法才能被唤醒;当线程调用一个Thread类中的Sleep方法时,线程就进入休眠状态;如果一个线程在运行状态下发出输入/输出请求,该线程将进入阻塞状态,在其等待输入/输出结束时,线程进入就绪状态,对于阻塞的线程来说,即使系统资源空闲,线程依然不能回到执行状态;当线程执行完毕时,线程进入死亡状态。
图1描述了线程的生命周期的各个状态。
 单线程简介_什么是单线程和多线程
图1  线程的生命周期状态图
例如,新建一个Windows应用程序,程序会在Program.cs文件中自动生成一个Main方法,该方法就是主线程的启动入口点。Main方法代码如下。
[STAThread]
static void Main()
{
    Application.EnableVisualStyles();
    Application.SetCompatibleTextRenderingDefault(false);
    Application.Run(new Form1());
}


免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/29789.html

(0)

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信