并发编程
洛豳枭薰
最好的年华为最初的梦想尽最大的努力
展开
-
并发中Thread的yield方法
public class volatileNotEnsureAtomic { volatile int i = 0; /** * 由于volatile虽然支持可见性,支持单个变量的读写原子性,但不支持复合操作的原子性 * */ public void method() { i++; } public static void main(String[] args) {...原创 2019-05-08 21:56:33 · 335 阅读 · 0 评论 -
Future接口与FutureTask子类
文章目录Future简介例子FutureTask类图属性内部静态类构造函数任务运行任务取消结果获取参考Future简介为什么需要future模式? 正常客户访问服务器的时候会打开一个线程,该线程按顺序运行任务,也就是客户端首先获取反馈,只有反馈之后客户端才能进行后序的执行,但是如果有时候是获取比较大的资源呢?用户由于必须...原创 2019-06-02 21:32:54 · 1021 阅读 · 0 评论 -
CyclicBarrier实例
1、栅栏的作用就是设定一个阈值,当到达的线程数达到阈值的时候,此时就会放开栅栏,之后执行下一轮循环2、栅栏除了设定阈值,还可以设定打开栅栏后执行的新任务public CyclicBarrier(int parties, Runnable barrierAction) { if (parties <= 0) throw new IllegalArgumentExcept...原创 2019-06-01 11:43:32 · 660 阅读 · 0 评论 -
Forkjoin框架原理解析
声明:本篇博客是在阅读了引用博客的两篇文章后做了简短的概括与归纳,只作为自己笔记文章目录一、思想二、工作窃取算法三、demo用例四、关键组件ForkJoinPoolForkJoinTaskForkJoinWorkerThreadWorkQueue五、Fork/Join运行流程图任务提交创建线程signalWork方法任务执行六、引用博客一、思想Fork/Join是Java7提供的并行执行...转载 2019-05-31 21:15:58 · 4528 阅读 · 0 评论 -
interrupt()方法和InterruptException异常
interrupt()方法和InterruptException异常,是java专门用来处理线程阻塞的。线程阻塞,就表示要等待一段时间。如果需要等待的时间比较长,正常还没结束之前想中断某个线程的阻塞状态怎么办?这就是靠interrupt()方法来解决了。如果因为一些特殊的原因,想提前中断一些阻塞的线程,以让他们提前解除阻塞状态,然后继续执行下去。只需要在其他线程调用指定线程的interrupt()...转载 2019-05-13 15:57:54 · 5544 阅读 · 0 评论 -
ConcurrentHashMap源码分析(JAVA 8)(综述)
文章目录一、ConcurrentHashMap缘起二、ConcurrentHashMap 的升级打怪 ...原创 2019-05-26 16:52:31 · 172 阅读 · 0 评论 -
数据库连接池的实现
一、设计数据库连接池将数据库连接池可以作为一个容器,在这个容器里边含有Connection(JDBC接口),可以将Connection作为一个管道,每一次线程获取Connection(获取管道)后进行数据库操作。1、Connection的存储结构选择Linkedlist2、线程释放管道:从Linkedlist删除该管道,通过wait-notify唤醒阻塞线程3、线程获取管道:选择两种模式:...原创 2019-05-17 10:28:23 · 255 阅读 · 0 评论 -
JDBC连接MySQL驱动器jar包全集
一、jar包集合下载:https://mvnrepository.com/artifact/mysql/mysql-connector-java二、三、四、下载后将jar包导入,项目-->Build Path-->AddExternalArchievs五、项目导入jar包后就可以通过JDBC连接MYSQL(包括集成mysql的软件)...原创 2019-05-15 16:24:41 · 14208 阅读 · 1 评论 -
as-if-serial和happen-before区别于具体规则
as-if-serial VS happens-beforeas-if-serial语义保证单线程内程序的执行结果不被改变,happens-before关系保证正确同步的多线程程序的执行结果不被改变。as-if-serial语义给编写单线程程序的程序员创造了一个幻境:单线程程序是按程序的顺序来执行的。happens-before关系给编写正确同步的多线程程序的程序员创造了一个幻境:正确同步的...转载 2019-05-09 21:04:08 · 1331 阅读 · 0 评论 -
Executors全面解析
文章目录类结构图![在这里插入图片描述](https://img-blog.csdnimg.cn/20190604212428631.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzMyNjc5ODM1,size_16,color_...原创 2019-06-04 21:25:06 · 4060 阅读 · 0 评论