上接https://www.cnblogs.com/Uninstalllingyi/p/10417446.html 福特算法(Bellman-Ford) 适用范围及时间复杂度 单源最短路径算法,可处理负边权,但,无法处理负回路的情况。时间复杂度O(NE) N:顶点数,E:边数 核心思想 松弛计算。什 ...
分类:
编程语言 时间:
2019-02-23 10:43:44
阅读次数:
218
1.AQS基本属性CAS算法:CAS,CPU指令,在大多数处理器架构,包括IA32、Space中采用的都是CAS指令,CAS的语义是“我认为V的值应该为A,如果是,那么将V的值更新为B,否则不修改并告诉V的值实际为多少”,CAS是项乐观锁技术,当多个线程尝试使用CAS同时更新同一个变量时,只有其中一个线程能更新变量的值,而其它线程都失败,失败的线程并不会被挂起,而是被告知这次竞争中失败,并可以再次
分类:
其他好文 时间:
2019-02-11 20:12:19
阅读次数:
198
1. concurrent包的结构层次 在针对并发编程中,Doug Lea大师为我们提供了大量实用,高性能的工具类,针对这些代码进行研究会让我们对并发编程的掌握更加透彻也会大大提升我们队并发编程技术的热爱。这些代码在java.util.concurrent包下。如下图,即为concurrent包的目 ...
分类:
其他好文 时间:
2019-02-08 20:17:28
阅读次数:
161
1. LockSupport简介 在之前介绍AQS的底层实现,已经在介绍java中的Lock时,比如ReentrantLock,ReentReadWriteLocks,已经在介绍线程间等待/通知机制使用的Condition时都会调用LockSupport.park()方法和LockSupport.u ...
分类:
其他好文 时间:
2019-02-08 20:06:51
阅读次数:
169
1. AQS简介 在上一篇文章中我们对lock和AbstractQueuedSynchronizer(AQS)有了初步的认识。在同步组件的实现中,AQS是核心部分,同步组件的实现者通过使用AQS提供的模板方法实现同步组件语义,AQS则实现了对同步状态的管理,以及对阻塞线程进行排队,等待通知等等一些底 ...
分类:
其他好文 时间:
2019-02-08 19:56:20
阅读次数:
201
concurrent包下的很多框架实现基本都依赖于AQS ,而AQS底层依赖LockSupport ,LockSupport依赖Unsafe提供的能力进行加锁等操作 1.park() unpark() 内部基于互斥量机制 permit初始值为0 park():如果permit等于0 阻塞;如果per ...
分类:
其他好文 时间:
2019-02-04 12:56:30
阅读次数:
173
AQS 概述 AQS,即AbstractQueuedSynchronizer, 队列同步器,它是Java并发用来构建锁和其他同步组件的基础框架 AQS原理 AQS的实现依赖内部的同步队列(FIFO双向队列),如果当前线程获取同步状态失败,AQS会将该线程以及等待状态等信息构造成一个Node,将其加入 ...
分类:
其他好文 时间:
2019-02-01 13:06:25
阅读次数:
199
重入锁 重入锁指的是当前线成功获取锁后,如果再次访问该临界区,则不会对自己产生互斥行为。 Java中对ReentrantLock和synchronized都是可重入锁,synchronized由jvm实现可重入即使,ReentrantLock都可重入性基于AQS实现。 ReentrantLock还提 ...
分类:
其他好文 时间:
2019-02-01 12:22:20
阅读次数:
210
AQS即队列同步器AbstractQueuedSynchronizer(以下简称同步器),是用来构建锁或者其他同步组件的基础框架。 AQS使用了一个int成员变量表示同步状态。 AQS通过内置的FIFO双向队列来完成获取锁线程的排队工作 同步器包含两个节点类型的应用,一个指向头节点,一个指向尾节点,... ...
分类:
其他好文 时间:
2019-01-28 10:51:04
阅读次数:
324
概述Java中的并发锁大致分为隐式锁和显式锁两种。隐式锁就是我们最常使用的synchronized关键字,显式锁主要包含两个接口:Lock和ReadWriteLock,主要实现类分别为ReentrantLock和ReentrantReadWriteLock,这两个类都是基于AQS(AbstractQueuedSynchronizer)实现的。还有的地方将CAS也称为一种锁,在包括AQS在内的很多并
分类:
编程语言 时间:
2019-01-18 16:33:16
阅读次数:
151