博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JAVA思维导图系列:多线程0基础
阅读量:6639 次
发布时间:2019-06-25

本文共 630 字,大约阅读时间需要 2 分钟。

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

多线程0基础

进程

独立性

拥有独立资源

独立的地址

无授权其它进程无法訪问

动态性

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

增加时间概念

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

并发性

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

多个进程互不影响

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

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

线程

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

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

轻量级进程

性能高,创建easy

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

JAVA多线程

创建

继承Thread

实现Runnable接口(推荐)

生命周期

新建

new 一个Thread

就绪

运行start方法

执行

開始运行run方法

堵塞

进入堵塞

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

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

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

等待某个notify通知

调用suspend挂起

解除堵塞

调用sleep超过指定时间

调用堵塞式IO方法已返回

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

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

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

死亡

run方法结束

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

调用stop方法

你可能感兴趣的文章
css的postion属性
查看>>
HSRP自己做的实验
查看>>
Installing Oracle JDK for linux
查看>>
智能算法之遗传算法
查看>>
CentOS-7.0的核心安装与配置
查看>>
关于新版本cuckoo hook位置变动的思考
查看>>
PHP入门【1】
查看>>
FastCgi与PHP-fpm之间是个什么样的关系
查看>>
Servlet 代码模板
查看>>
Dell 服务器报错Voltage sensor detected a failure value
查看>>
jquery判断某个属性是否存在 hasAttr
查看>>
实战体验-天津ITAA实验室-每周末
查看>>
redis群集节点删除和添加
查看>>
Quartz Core 图层编程
查看>>
一课OO设计模式:抽象工厂
查看>>
Stackoverflow热门问题
查看>>
Code::Blocks导出MakeFile文件工具
查看>>
HTML 5 的自定义 data-* 属性和jquery的data()方法的使用
查看>>
胖子哥的大数据之路(三)- 大数据仓库的需求分析该怎么做
查看>>
tensorflowDetectionAPI
查看>>