java并发编程
文章平均质量分 59
木鱼与鱼
拥有10年软件开发经验,3年管理经验
6年传统金融(国际结算、清算等方向)与 5年互联网金额(支付、供应链、财富管理等方向)行业经验
参与并领导多个0至1项目建设
展开
-
java并发之volatile
volatile 关键字之前或多或少的使用过,之前只了解是为了解决多线程之间的内存可见性问题,只是使用,并没有追究其中的原理。 在学习volatile之前,最好先了解一下并发编程中常见的三个问题: 原子性: 原子是化学变化中的不可再分的基本微粒。 回到程序设计中,熟悉数据库事务的应该都清楚,事务的4大特性中就有原子性,原子性就是一个或多个操作要么都成功,要么都不执行的一个状态,在说明原子性重原创 2017-12-26 19:17:53 · 138 阅读 · 0 评论 -
多线程按需顺序执行(Thread.join)
在项目中会有线程顺序执行的一些需求,比如...,我要吃早餐,但吃早餐必须要等女朋友做好早餐才能吃,但是在等着的同时我可以做其他的事情,比如看电视,我们写个小demo来看一下:import java.text.SimpleDateFormat;import java.util.concurrent.ExecutorService;import java.util.concurrent.Ex...原创 2018-09-12 09:54:44 · 489 阅读 · 0 评论 -
常见问题 之 线程的几种创建方式
多线程在一些互联网项目或多或少会用到的,线程的几种创建方式也是要有所了解,并根据不同的场景选择不同的模式,同时线程的几种创建方式也是一道经久不衰的面试题,一般的面试者都会回答两种(继承Thread类和实现Runnable接口),问其区别,都会说到java单继承的特性,但其实创建线程常用的应该有4种,区别来说每一种其实都对应不同的使用场景。第一种实现方式:继承Thread/** * 测试...原创 2018-09-11 17:32:44 · 160 阅读 · 0 评论 -
面试之闭锁 通关(CountDownLatch)
在实际的项目场景中,我们有时候会有以下类似的场景需求:日终统计时,有多个线程并发统计各分类情况,有一个线程需要等待每一类都统计完成后进行合计; 或者多个线程检查周边系统或应用启动情况,待所有周边系统启动成功后再启动当前应用;针对以上类似场景JDK提供了非常好用的两个工具类:CountDownLatch、CyclicBarrier,那两个之前有什么区别呢,我们看一下官方解释:publ...原创 2018-09-20 20:55:31 · 511 阅读 · 0 评论