zoukankan      html  css  js  c++  java
  • 多线程介绍

    1、概念

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

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

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

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

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

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

    2、作用

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

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

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

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

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

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

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

      

      

  • 相关阅读:
    Shell中调用java时的参数
    简析echo命令在Linux系统中的使用
    设置Linux环境变量的三种方法
    nohup 后台运行,以及重定向标准输出和标准错误 &/dev/null 文件
    &命令
    linux下卸载gij的java
    在Linux下运行可执行Jar包
    jar参数运行应用时classpath的设置方法
    shell获取当前进程pid和上一个进程pid
    检查文件,如果文件不存在则创建
  • 原文地址:https://www.cnblogs.com/lingduqianli/p/7373470.html
Copyright © 2011-2022 走看看