随笔分类 - Java多线程
摘要:一、简介 ThreadPoolTaskExecutor线程是Spring的线程池,其底层是依据JDK线程池ThreadPoolExecutor来实现的。 二、参数介绍 corePoolSize:线程池维护线程最小的数量,默认为1maxPoolSize:线程池维护线程最大数量,默认为Integer.M
阅读全文
摘要:一、简介 ExecutorService是Java中对线程池定义的一个接口,它java.util.concurrent包中,在这个接口中定义了和后台任务执行相关的方法。 二、线程池 Java给我们提供了一个Executors工厂类,它可以帮助我们很方便的创建各种类型ExecutorService线程
阅读全文
摘要:CountDownLatch概念 CountDownLatch是一个同步工具类,用来协调多个线程之间的同步,或者说起到线程之间的通信(而不是用作互斥的作用)。 CountDownLatch能够使一个线程在等待另外一些线程完成各自工作之后,再继续执行。使用一个计数器进行实现。计数器初始值为线程的数量。
阅读全文
摘要:说明:线程共包括以下5种状态。1. 新建状态(New) : 线程对象被创建后,就进入了新建状态。例如,Thread thread = new Thread()。2. 就绪状态(Runnable): 也被称为“可执行状态”。线程对象被创建后,其它线程调用了该对象的start()方法,从而来启动该线程。
阅读全文
摘要:1 package org.study2.javabase.ThreadsDemo.schedule; 2 3 import java.util.Date; 4 import java.util.Timer; 5 import java.util.TimerTask; 6 7 /** 8 * @Auther:GongXingRui 9 * @Date:2018/9/...
阅读全文
摘要:1 package org.study2.javabase.ThreadsDemo.sync; 2 3 /** 4 * @Auther:GongXingRui 5 * @Date:2018/9/20 6 * @Description: 单例模式 - 二次确认,提高效率 7 **/ 8 public class DanDemo { 9 public static...
阅读全文
摘要:1 package org.study2.javabase.ThreadsDemo.sync; 2 3 /** 4 * @Auther:GongXingRui 5 * @Date:2018/9/18 6 * @Description:synchronized线程锁 7 **/ 8 public class TicketApp { 9 public stat...
阅读全文
摘要:1 package org.study2.javabase.ThreadsDemo.status; 2 3 import java.text.SimpleDateFormat; 4 import java.util.Date; 5 6 /** 7 * @Auther:GongXingRui 8 * @Date:2018/9/19 9 * @Description:...
阅读全文
摘要:1 package org.study2.javabase.ThreadsDemo.status; 2 3 /** 4 * @Auther:GongXingRui 5 * @Date:2018/9/19 6 * @Description: 阻塞进程方法Join 7 **/ 8 public class ThreadJoin { 9 public stati...
阅读全文
摘要:1 package org.study2.javabase.ThreadsDemo.status; 2 3 /** 4 * @Auther:GongXingRui 5 * @Date:2018/9/19 6 * @Description:通过标志位停止线程 7 **/ 8 public class ThreadStop { 9 public static ...
阅读全文
摘要:1 package org.study2.javabase.ThreadsDemo.runnable; 2 3 /** 4 * @Auther:GongXingRui 5 * @Date:2018/9/18 6 * @Description:通过实现Runnable接口实现多线程 7 **/ 8 public class TicketApp { 9 pu...
阅读全文
摘要:1 package org.study2.javabase.ThreadsDemo.staticproxy; 2 3 /** 4 * @Date:2018-09-18 静态代理 设计模式 5 * 1、真实角色 6 * 2、代理角色:持有真实角色的引用 7 * 3、二者实现相同的接口 8 * 举例说明:Couple类和Company类都实现了Marry,通过Comp...
阅读全文