Java线程同步与死锁认识
来源:互联网 发布:路书轨迹回放js 编辑:程序博客网 时间:2024/06/14 05:37
讲下自己的认识,算小小的总结吧!
synchroized 具有同步线程的功能,它的处理机制类似于给参数里面的对象赋一个标记值,来表明当前状态,当程序里面某个线程执行synchroized里面的代码段时,它会先对这个状态进行判断,如果处于0这种状态,它会暂时被阻塞,所以能有效防止数据错误的产生。
死锁这个概念,个人理解是两个线程或多个线程产生冲突,例如两个线程,两个代码块,当线程一在处理代码块一的时候,这个时候要用到代码块二的东西,而线程二在处理代码块二的东西,也希望调用代码块一的东西,这个时候由于各自线程都锁住当前代码块,导致一直处于阻塞状态,然后就崩溃了。
一个简单的例子:
package t1;public class t5 {public static void main(String[] args) {t t1 = new t();Thread tt = new Thread(t1);Thread tt1 = new Thread(t1);tt.start();tt1.start();}}class t implements Runnable {private int num = 2000;public void run() {while (true) {synchronized (this) {if (num > 0) {//try {//Thread.sleep(1000);//} catch (InterruptedException e) {//// TODO Auto-generated catch block//e.printStackTrace();//}System.out.println(Thread.currentThread().getName() + " " + num);num--;} elsebreak;}}}}
0 0
- Java线程同步与死锁认识
- JAVA线程同步与死锁
- Java线程的同步与死锁
- Java 线程同步与死锁 学习笔记
- Java多线程 线程同步与死锁
- Java线程的同步与死锁
- 线程同步与死锁
- 线程同步与死锁
- 线程同步与死锁
- 线程--同步与死锁
- java中线程同步(线程安全)与死锁问题
- java 同步与死锁
- 线程的同步与死锁
- java27.线程------同步与死锁
- java线程同步之死锁
- Java复习之线程的同步与死锁
- Java 线程的同步(synchronized)与死锁
- Java笔记六.线程同步、线程死锁
- git指令
- kestrel利用dubbo和memcached协议实现 队列服务
- Intent
- 来一篇吧
- ms sql server 查询一个表的字段属性和主键
- Java线程同步与死锁认识
- CentOS 6.6下,TFTP配置
- 2G、3G 和 4G
- Playmaker Input篇教程之Playmaker购买下载和导入
- 【黄斤德】现货黄金、现货白银技术分析之金蝉脱壳
- 实例说明在Cocos2d-x 3.x中使用SQLite
- 想说的太多了
- window和linux命令交互之--android镜像自动化编译,通过windows的bat脚本控制ubuntu编译服务器编译镜像
- 【Python】学习笔记(一)