多线程
践行渐悟
这个作者很懒,什么都没留下…
展开
-
ReentrantLock和synchronized两种锁定机制
转自:https://yq.aliyun.com/articles/38340?do=login&accounttraceid=6e22dd75-296f-45d2-85d0-f4399b222b66 摘要: 把代码块声明为 synchronized,使得该代码具有 原子性(atomicity)和 可见性(visibility)。 ReentrantLock和syn转载 2018-01-27 18:30:19 · 250 阅读 · 0 评论 -
Java并发编程:深入剖析ThreadLocal
Java并发编程:深入剖析ThreadLocal 想必很多朋友对ThreadLocal并不陌生,今天我们就来一起探讨下ThreadLocal的使用方法和实现原理。首先,本文先谈一下对ThreadLocal的理解,然后根据ThreadLocal类的源码分析了其实现原理和使用需要注意的地方,最后给出了两个应用场景。 以下是本文目录大纲: 一.对ThreadLocal的理解 二.深入解析Thre...转载 2018-03-23 20:48:27 · 153 阅读 · 0 评论 -
深入理解Java并发之synchronized实现原理
转自:http://blog.csdn.net/javazejian/article/details/72828483关联文章:深入理解Java类型信息(Class对象)与反射机制深入理解Java枚举类型(enum)深入理解Java注解类型(@Annotation)深入理解Java类加载器(ClassLoader)深入理解Java并发之synchronized实现原理Java并发编程-无锁CAS与...转载 2018-03-19 21:54:00 · 123 阅读 · 0 评论 -
interrupt、interrupted 、isInterrupted 区别
转自:http://blog.csdn.net/z69183787/article/details/250760331、interrupt interrupt方法用于中断线程。调用该方法的线程的状态为将被置为"中断"状态。注意:线程中断仅仅是置线程的中断状态位,不会停止线程。需要用户自己去监视线程的状态为并做处理。支持线程中断的方法(也就是线程中断后会抛出interruptedException的...转载 2018-03-12 11:44:38 · 114 阅读 · 0 评论 -
ReenTrantLock可重入锁(和synchronized的区别)总结 ReenTrantLock可重入锁(和synchronized的区别)总结
ReenTrantLock可重入锁(和synchronized的区别)总结可重入性:从名字上理解,ReenTrantLock的字面意思就是再进入的锁,其实synchronized关键字所使用的锁也是可重入的,两者关于这个的区别不大。两者都是同一个线程没进入一次,锁的计数器都自增1,所以要等到锁的计数器下降为0时才能释放锁。 锁的实现:Synchronized是依赖于JVM实现的,而ReenTran...转载 2018-03-17 21:04:41 · 415 阅读 · 0 评论 -
ThreadLocal使用场景
ThreadLocal是什么?ThreadLocal是用来维护线程中的变量不被其他线程干扰而出现的一个结构,内部包含一个ThreadLocalMap类,该类为Thread类的一个局部变量,该Map存储的key为ThreadLocal对象自身,value为我们要存储的对象,这样一来,在不同线程中,持有的其实都是当前线程的变量副本,与其他线程完全隔离,以此来保证线程执行过程中不受其他线程的影响。Thr...转载 2018-02-24 16:43:50 · 2621 阅读 · 1 评论 -
Java线程的5种状态及切换(透彻讲解)
转自:http://blog.csdn.net/pange1991/article/details/53860651点击打开链接Java中的线程的生命周期大体可分为5种状态。1. 新建(NEW):新创建了一个线程对象。2. 可运行(RUNNABLE):线程对象创建后,其他线程(比如main线程)调用了该对象的start()方法。该状态的线程位于可运行线程池中,等待被线程调度选中,获取cpu 的使用...转载 2018-02-11 18:49:10 · 98 阅读 · 0 评论 -
Synchronized vs Concurrent Collections(并发集合VS同步集合)
转自:http://blog.csdn.net/u014308482/article/details/53117980 Synchronized vs Concurrent Collections 注:文中ConcurrentHashMap指JDK1.5-1.7版本,在1.8中发生了很大的变化 不管是同步集合还是并发集合他们都支持线程安全,他们之间主要的区别体现在性能和可转载 2018-02-06 08:45:52 · 180 阅读 · 0 评论 -
单例模式有五种写法:懒汉、饿汉、双重检验锁、静态内部类、枚举。
转 https://biezhi.me/article/how-to-correctly-write-singleton-pattern.html单例模式算是设计模式中最容易理解,也是最容易手写代码的模式了吧。但是其中的坑却不少,所以也常作为面试题来考。本文主要对几种单例写法的整理,并分析其优缺点。很多都是一些老生常谈的问题,但如果你不知道如何创建一个线程安全的单例,不知道什么是双检锁,那这篇文章...转载 2018-02-09 19:40:14 · 118 阅读 · 0 评论 -
Java并发之AQS详解
一、概述 谈到并发,不得不谈ReentrantLock;而谈到ReentrantLock,不得不谈AbstractQueuedSynchronizer(AQS)! 类如其名,抽象的队列式的同步器,AQS定义了一套多线程访问共享资源的同步器框架,许多同步类实现都依赖于它,如常用的ReentrantLock/Semaphore/CountDownLatch...。 以下是本文的目录大纲:概述框架...转载 2018-03-28 09:56:06 · 90 阅读 · 0 评论