成长之路,一起走!总结一些知识,方面自己学习,也方面热爱学习的伙伴们可以更好的成长! 项目直接是静态的Html,下载后可以直接访问! 地址:https://github.com/dufyun/kuyu/tree/mast…
分类:java并发
Java高效并发之乐观锁悲观锁、(互斥同步、非互斥同步)
乐观锁和悲观锁 首先我们理解下两种不同思路的锁,乐观锁和悲观锁。 这两种锁机制,是在多用户环境并发控制的两种所机制。下面看百度百科对乐观锁和悲观锁两种锁机制的定义: 乐观锁( Optimistic Locking ) 相…
Java多线程系列--“JUC集合”01之 框架
概要 之前,在”Java 集合系列目录(Category)“中,讲解了Java集合包中的各个类。接下来,将展开对JUC包中的集合进行学习。在学习之前,先温习一下”Java…
2018年4月份,阿里最新的java程序员面试题目,仅供参考。
目录 技术一面(23问) 技术二面(3大块) 性能优化(21点) 项目实战(34块) JAVA方向技术考察点(15点) JAVA开发技术面试中可能问到的问题(17问) 阿里技术面试1 &nbs…
【Java并发编程】之十五:并发编程中实现内存可见的两种方法比较:加锁和volatile变量
转载请注明出处:http://blog.csdn.net/ns_code/article/details/17290021 在http://blog.csdn.net/ns_code/article/details/17…
java降低竞争锁的一些方法
序本文介绍一下提升并发可伸缩性的一些方式:减少锁的持有时间,降低锁的粒度,锁分段、避免热点域以及采用非独占的锁或非阻塞锁来代替独占锁。 减少锁的持有时间降低发生竞争可能性的一种有效方式就是尽可能缩短锁的持有时间。例如,可…
Redis实现分布式锁
Redis实现分布式锁 分布式锁的一些问题 并发问题,若多个客户端同时上锁,结果只允许一个客户端成功,其他失败,可以利用redis的SETNX 命令来实现,该命令允许若给定的 key 已经存在,则 SETNX 不做任何动…
Java定时任务
Java开发过程中经常会遇到使用定时任务的情况,我总结了一下有如下四种方式:Timer、ScheduledExecutorService、SpringTask、Quartz。 一、使用java的Timer 1、Timer…
java 锁
1、自旋锁 2、自旋锁的其他种类 3、阻塞锁 4、可重入锁 5、读写锁 6、互斥锁 7、悲观锁 8、乐观锁 9、公平锁 10、非公平锁 11、偏向锁 12、对象锁 13、线程锁 14、锁粗化 15、轻量级锁 16、锁消除…
Redis分布式锁
1、synchronized处理并发的缺点? (1)速度比较慢,无法做到细粒度的控制。 (2)只适合单机的情况,不适合集群。 2、分布式锁的实现方案 分布式锁一般有三种实现方式: (1). 数据库乐观锁; (2) 基于R…
java多线程--公平锁(三)
获取公平锁(基于JDK1.7.0_40) 通过前面“Java多线程系列–“JUC锁”02之 互斥锁ReentrantLock”的“示例1”,我们知道,获取锁是通过lock()函数。下面,我们以lock()对获…
java synchronized关键字,类锁,对象锁详解
在java编程中,经常需要用到同步,而用得最多的也许是synchronized关键字了,下面看看这个关键字的用法。 因为synchronized关键字涉及到锁的概念,所以先来了解一些相关的锁知识。 java的内置锁:每个…