zoukankan      html  css  js  c++  java
  • JAVA思维导图系列:多线程0基础

    感觉自己JAVA基础太差了,又一次看一遍,已思维导图的方式记录下来


    多线程0基础





    进程

    独立性

    拥有独立资源

    独立的地址

    无授权其它进程无法訪问

    动态性

    与程序的差别是:进程是动态的指令集合,而程序是静态的指令集合

    增加时间概念

    有自己的生命周期和不同的状态

    并发性

    多个进程能够在单核处理器并发运行

    多个进程互不影响

    和并行的差别:并行是同一时刻多个进程在多个处理器上同一时候运行

    而并发是指在同一时刻仅仅能运行一条指令,但互相切换迅速,宏观上看是运行多个指令

    线程

    线程相对于进程如同进程相对于操作系统

    多个线程共享同一进程的资源

    轻量级进程

    性能高,创建easy

    应用:一个浏览器同一时候下载多个图片、一个server同一时候处理多个请求

    JAVA多线程

    创建

    继承Thread

    实现Runnable接口(推荐)

    生命周期

    新建

    new 一个Thread

    就绪

    运行start方法

    执行

    開始运行run方法

    堵塞

    进入堵塞

    调用sleep方法主动放弃处理器资源

    想获得一个同步检測器,但改同步检測器被其它资源所占有

    调用一个堵塞式的IO方法,在该方法返回前,线程堵塞

    等待某个notify通知

    调用suspend挂起

    解除堵塞

    调用sleep超过指定时间

    调用堵塞式IO方法已返回

    成功获得了试图要得到的同步检測器

    等待某个通知时,其它线程发出了通知

    处于挂起的线程调用了resume方法

    死亡

    run方法结束

    程序抛出一个未捕获的异常

    调用stop方法


  • 相关阅读:
    12.3、Libgdx的图像之截屏
    12.2、Libgdx的图像之清屏
    12.1、Libgdx的图像之持续性和非持续性渲染
    12、Libgdx的图像之全屏和垂直同步
    11.4、Libgdx的音频之录制PCM音效
    11.3、Libgdx的音频之播放PCM音频
    11.2、Libgdx的音频之音乐
    11.1、Libgdx的音频之音效
    11、Libgdx的音频
    阿里云服务器部署项目后台运行(入门)
  • 原文地址:https://www.cnblogs.com/mfrbuaa/p/3881097.html
Copyright © 2011-2022 走看看