- 1、本文档共37页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Java(并发编程)多线程入门到精通[张振华.Jack]
自我介绍
Java多线程从入门到精通
Java并发编程详解
张振华.Jack
QQ:494460705
Mail:zhangzhenhua846@126.com
2015年6月
10年Java开发
1 张振华.Jack
目录
I. JAVA-Thread概念
II. Thread的三种实现方法
III. 生命周期
IV. 安全和锁
V. Concurrent包(安全集合类、安全Queue)
VI. 线程阻塞机制
VII. 线程池详解(原理,实际使用)
VIII. 线程的监控,分析方法
IX. 扩展数据库连接池
2
张振华.Jack
概念
A. 什么是进程
A. 是资源分配的最小单位; (资源,包括各种表格、内存空间、磁盘空间)
B. 同一进程中的多条线程将共享该进程中的全部系统资源
B. 什么是线程
A. 线程只由相关堆栈 (系统栈或用户栈)寄存器和线程控制表TCB组成。
寄存器可被用来存储线程内的局部变量
B. 线程是CPU调度的最小单位
C. 什么是并行和并发
A. 并行运行:总线程数= CPU数量*核心数:
B. 并发运行:总线程数 CPU数量*核心数:(时间片轮转进程调度算法)
3
张振华.Jack
Thread的三种实现方法
4
张振华.Jack
线程的生命周期/常用方法
获得当前线程的副本:
Thread current = Thread.currentThread ();
例如多线程上传的文件的进度条可以使用
5
张振华.Jack
何为安全
什么是安全的?先问个问题
是不是不加锁就不是线程安全的,个人感觉只要你代码里面没有变量
互串,线程之间互不影响,例如server的设计方法;
非单例代码也是安全的,注意只有单例模式下才会有锁的问题
6
张振华.Jack
锁
一.隐式锁:synchronized(同一个对象锁下面的,synchronized 区域是互斥的)
二. 方法锁(默认是当前对象的锁)
三. 代码快锁(性能高于方法锁,可以指定哪个对象的锁)
四.显示锁:java.util.concurrent.lock (需要手动关/开),注意
文档评论(0)