首页 > 代码库 > 多线程

多线程

 

进程

  应用程序的执行实例,有自己独立的内存空间和系统资源,是由一个或多个线程组成,CPU 上真

正执行的是线程,

  比喻;我们电脑上运行的QQ,QQ程序穷后在电脑上就是一个进程,

      QQ可以有多个对话框,每一个对话框我们可以理解为一个线程,

注;线程是CPU调度和分配的基本单位

 


多线程

  如果在一个进程中,容时运行多个线程,来完成不同的工作,我们称之为多线程

  注;多个线程是交替占用CPU 的并不是真正的同时执行。

 

 

多线程的好处

  01,充分利用CPU的资源

  32,给用户带来更好的体验

 

实现多线程的方法

  01,继承Thread类,重写run()方法

  02,实现runable接口重写run()方法

 

run()和start()的区别

  start();真正的启动线程,并不是线程真正的执行,在调用start(),底层默认会执行

run();

  run();普通的方法。也成为线程体,CPU分配时间片给当前线程的时候,线程才真正的执

行;

 

线程的生命周期

  01,新生状态

    MyThread  thread = new  MyThread();

  02,就绪状态

    thread.start ();

  03,运行状态

    cpu分配时间片给thread的时候,开始执行run()

  04,阻塞状态

    sleep();wait();join();

  05,死亡状态

    001,正常死亡  run ()执行完毕,正常的

    002,异常死亡  run ()执行过程中,出现异常的情况,非正常死亡

    技术分享

 

多线程