JUC包
RookieMatthew
这个作者很懒,什么都没留下…
展开
-
Java线程池的创建和使用
什么是线程池? 线程池通俗的讲就是在程序启动时创建好若干个线程,供程序去调度和使用,当程序需要使用线程时不再需要去频繁的创建和销毁线程,而可以去线程池中获取空闲的线程直接使用,当使用完后线程进入空闲状态并非直接销毁线程。从JDK1.5开始,JAVA API的java.util.concurrent包下提供了Executors供开发人员方便的进行不同类型线程池的创建。 为什么使用线程池? 减小线程频繁创建和销毁对系统资源的消耗 提高系统响应速度,当系统需要使用线程时直接从池中获取 线程池可以根据实际情况进行原创 2020-11-08 22:11:43 · 774 阅读 · 0 评论 -
原子变量及CAS算法
1.i++和++i问题 @Test public void test1(){ int i = 0,j,k; j = i++; k = ++j; System.out.println("i="+i+",j="+j+",k="+k); } 问题分析: 如上图,以i++操作为例,显然该操作是非原子性的,在底层实际上可分为...原创 2019-11-13 21:12:11 · 186 阅读 · 0 评论 -
内存可见性及volatile关键字
1.提出问题 阅读以下代码,思考运行结果! package com.zsr.juc1; public class VolatileTest { public static void main(String[] args){ Demo d = new Demo(); new Thread(d).start(); while (true){ ...原创 2019-11-09 14:34:29 · 189 阅读 · 0 评论