
多线程
等那时夕颜
这个作者很懒,什么都没留下…
展开
-
java多线程编程(4)CountDownLatch,CyclicBarrier,Semaphore的举例使用
前言这3个组件具有相似的用途CountDownLatch倒数锁import java.util.concurrent.CountDownLatch;public class Test16 extends Thread{ //如果把3改为4,可以看到3个线程都等待在那里了 public static CountDownLatch countDownLatch = new CountDownLatch(3); public void run(){ System.out原创 2020-05-31 13:20:15 · 128 阅读 · 0 评论 -
java多线程编程(3)ThreadLocal的使用以及源码分析
前言本次源码基于JDK1.8版本源码分析get方法 public T get() { //获得对应的线程 Thread t = Thread.currentThread(); //通过线程获得对应的map ThreadLocalMap map = getMap(t); //判断map是否为空,不为空则拿到对应线程作为Key的value if (map != null) { Thre原创 2020-05-30 23:22:00 · 111 阅读 · 0 评论 -
java多线程编程(2)通过join按顺序依次打印ABC
前言这次的题目讲一个另一个多线程的关键字join,当使用join()的时候,当前线程会让出执行权,让join线程优先进行题目3个线程,打印出ACB代码public class Test14A extends Thread{ public void run(){ System.out.println("A start"); System.out.println("A"); }}public class Test14B extends Threa原创 2020-05-27 20:56:19 · 658 阅读 · 0 评论 -
java多线程编程(1)生产者消费者模式
前言最近也看完了<<并发编程的艺术>>,也零零散散的看了不少多线程有关的东西。早上写代码的时候看到一篇博客讲了使用notify和wait相关的一些东西。本人自己对多线程一直有点苦手,书本看了一大堆。但是实际使用依然头大。这次突然对于多线程编码有点感悟,记录于此。概念相关synchronized{}锁住的代码块,结束代码执行之后。会释放对应的锁wait和notify,可以在synchronized{}之中使用。即使拿到了锁,也会在代码块中释放出去。题目1现在有4个线程,2个原创 2020-05-26 13:26:33 · 253 阅读 · 0 评论