JAVA思维导图系列:多线程0基础
感觉自己JAVA基础太差了,又一次看一遍,已思维导图的方式记录下来
多线程0基础
进程
独立性
拥有独立资源
独立的地址
无授权其它进程无法訪问
动态性
与程序的差别是:进程是动态的指令集合,而程序是静态的指令集合
增加时间概念
有自己的生命周期和不同的状态
并发性
多个进程能够在单核处理器并发运行
多个进程互不影响
和并行的差别:并行是同一时刻多个进程在多个处理器上同一时候运行
而并发是指在同一时刻仅仅能运行一条指令,但互相切换迅速,宏观上看是运行多个指令
线程
线程相对于进程如同进程相对于操作系统
多个线程共享同一进程的资源
轻量级进程
性能高,创建easy
应用:一个浏览器同一时候下载多个图片、一个server同一时候处理多个请求
JAVA多线程
创建
继承Thread
实现Runnable接口(推荐)
生命周期
新建
new 一个Thread
就绪
运行start方法
执行
開始运行run方法
堵塞
进入堵塞
调用sleep方法主动放弃处理器资源
想获得一个同步检測器,但改同步检測器被其它资源所占有
调用一个堵塞式的IO方法,在该方法返回前,线程堵塞
等待某个notify通知
调用suspend挂起
解除堵塞
调用sleep超过指定时间
调用堵塞式IO方法已返回
成功获得了试图要得到的同步检測器
等待某个通知时,其它线程发出了通知
处于挂起的线程调用了resume方法
死亡
run方法结束
程序抛出一个未捕获的异常
调用stop方法
JAVA思维导图系列:多线程0基础的更多相关文章
- Python思维导图(一)—— 基础
前言 思维导图并不能涵盖所有知识点,只是梳理某个知识点下我们需要重点关注的分支:根据自己的情况可以进行拓展学习 计算机基础 博主认为需要重点掌握的有 编译型语言和解释型语言的区别?分别有什么编程语言? ...
- Java思维导图之Class对象
Class对象相关知识导图: 导图源文件保存地址:https://github.com/wanghaoxi3000/xmind
- Java基础学习总结(31)——Java思维导图
- java思维导图
https://www.edrawsoft.cn/viewer/public/s/eeca7704686971
- Spring思维导图(一)
关于Spring Spring是一个开源框架,是为了解决企业应用程序开发复杂性而创建的.框架的主要优势之一就是其分层架构,分层架构允许您选择使用哪一个组件,同时为 J2EE 应用程序开发提供集成的框架 ...
- Elasticsearch 思维导图集锦(持续更新...)
目录 引言 思维导图 全文搜索 Elastic 基础 Query DSL Multi Match Query 系列文章列表 参考 引言 本文主要是对 elasticsearch 的一些知识点使用思维导 ...
- Spring思维导图(IOC篇)
写在前面 写过java的都知道:所有的对象都必须创建:或者说:使用对象之前必须先创建.而使用ioc之后,你就可以不再手动创建对象,而是从ioc容器中直接获取对象. 就好像我们无需考虑对象的销毁回收一样 ...
- 如何使用MindManager更改思维导图布局
思维导图可以帮您直观地捕捉想法和信息,并将其组织起来,进一步创建行动计划,思维导图软件MindManager不仅可以帮您分析问题.使用头脑风暴得出解决方案,还可以规划复杂的项目.下面是MindMana ...
- Spring思维导图(MVC篇)
写在前面 生活就像海洋,只有意志坚强的人才能到达彼岸. 已经很久没有发文章了呀,想必大家都挂念我了,哈哈. 温故而知新,今天一起来复习一下spring mvc的内容吧. spring mvc简介与运行 ...
随机推荐
- HDU 2215 Maple trees
增量法的最小包围圈算法,不会…… #include <cstdio> #include <cstring> #include <iostream> #include ...
- hdoj 1532 Drainage Ditches(最大网络流)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1532 思路分析:问题为最大网络流问题,给定一个有向图,需要求解该有向图的最大网络流,使用Edmonds ...
- ++i和i++哪个效率高?
这个问题需要分两种情况来解说: 1.当变量i的数据类型是c++语言默认提供的类型的话,他们的效率是一样的. int a,i=0; a=++i;汇编代码如下: int a,i=0; 01221A ...
- 操蛋的UITableView重用机制
1,背景 你可能会遇见一下情况: 使用UITableView加载数据,比如你的每一个cell上面有一个UITextField,当你在第一个cell的UITextField中写下了内容,开始下滑UITa ...
- oracle 分组后取每组第一条数据
‘数据格式 分组取第一条的效果 sql SELECT * FROM (SELECT ROW_NUMBER() OVER(PARTITION BY x ORDER BY y DESC) rn, test ...
- C#利用委托跨线程更新UI数据
转:http://www.2cto.com/kf/201206/136587.html 在使用C#的过程中,难免会用到多线程,而用多线程之后,线程如何与界面交互则是一个非常头疼的问题.其实不仅仅是界面 ...
- Sublime 操作技巧
吐槽一下:刚下载的subime不是等宽字体,空格.表达.字母i什么的都很窄,看着不方便: 根据网上说的换成等宽字体,试了好多种字体,字体变了.但宽度没变. 然后有装了soda,和相应的color-th ...
- 初学MVC
学习MVC基础:C#. ADO.NET .html.javascript.ASP.Net .WebFrom MVC模式两种理解:一种是表现模式,另一种是架构模式.它将应用程序分成三个主要的组件:视图( ...
- UrlEncode编码/UrlDecode解码
public class encode { public static void main(String[] args) throws UnsupportedEncodingException ...
- 为什么cp很多小文件非常慢——对cp和rm命令的一些思考
linux中的文件复制命令——CP linux中文件剪切的命令——MV 1.问题背景 今天在某个目的动作过程中想把一个文件夹下的文件复制到另外的一个文件夹下 cp -fr ./dir1/ /d ...