多线程介绍

1、概念

  什么是进程:进程是资源分配的最小单位,每一个进程之间有独立的数据空间和运行代码

  什么是线程:线程是cpu的最小单位,每一个线程有独立运行栈和程序计数器,同一类线程共享代码和数据空间。

  他们的关系:1> 一个进程包含1---n个线程。线程之间切换开销小进程之间切换开销大。(注:开销是占用内存空间大小)

        2> 线程和进程包含五个阶段:创建、就绪、运行、阻塞和终止。

        3> 多进程是指系统运行多个程序或任务。

        4> 多线程是在同一个程序或任务中有多个顺序流在执行。

2、作用

  优点    1>可以解决均衡负载问题,充分利用CPU的资源,为了提高CPU的使用率,采取多线程方法来完成多事情而无不干扰

      2>多数情况下为了处理大量的IO的操作或是需要花费大量时间的任务,要放到后台进行处理,发挥多核处理器的优势。如下载视频或者图片等,提高用户体验值。

  缺点     1>降低代码的可读性。

      2>多线程相对单线程来说开销大

     3>当多个线程同时争夺一个资源的时候需注意线程安全隐患的问题。

3、实现多线程三种方式:

  第一种是继承Thread类,第二一种是实现Runable接口,第三种是实现Callable接口,并与Future、线程池结合使用。常用的未前面的两种。

  

  

原文地址:https://www.cnblogs.com/lingduqianli/p/7373470.html