随笔分类 - Java并发
摘要:lock 概述: 本质上Lock仅仅是一个接口 Lock有三个实现类 ReentrantLock:表示重入锁 它是唯一一个实现了Lock接口的类 重入锁指的是线程在获得锁之后 再次获取该锁不需要阻塞 而是直接关联一次计数器增加重入次数 ReentrantReadWriteLock:重入读写锁 它实现
阅读全文
摘要:synchronized 概述: synchronized是Java中的关键字 可以给方法和代码块加锁 (synchronized底层好像是通过C实现的) 可以保证方法或者代码块在运行时 同一时刻只有一个线程可以进入到临界区(临界区就是synchronized锁住的区域) Java中每一个对象都可以
阅读全文
摘要:Java锁概念 在Java中 保证线程安全的方案分为两种:同步、无同步、 造成线程安全问题的原因就是:多线程情况下共享变量的写操作不安全 所以解决方案也就是针对共享的变量进行的 同步共享变量 或者 不同步共享变量 同步: 互斥(阻塞):互斥是实现同步的一种手段 属于悲观的并发策略 多线程并发访问共享
阅读全文
摘要:继承Thread类 示例如下: public static void main(String[] args) { System.out.println("主线程启动:"+Thread.currentThread().getName()); new Thread02().start(); } publ
阅读全文
摘要:并发、并行、同步、线程安全 **并发:**并发的关键是你有处理多个任务的能力 不一定要同时 **并行:**并行的关键是你有同时处理多个任务的能力 **同步:**通过控制和调度 来保证多线程中共享资源的数据一致性 线程安全:用来描绘一段代码 指在并发的情况之下 该代码经过多线程使用 线程的调度顺序不影
阅读全文