摘要: 问题:怎样避免重复创建线程,销毁线程这些动作呢? 》可以使用Java 线程池 利用Executors创建不同的线程池满足不同场景的需求 1、newFixedThreadPool(int n Threads) >指定工作线程数量的线程池 2、newCachedThreadPool() >处理大量短时间 阅读全文
posted @ 2019-04-09 17:46 邂逅那青春-VING 阅读(203) 评论(0) 推荐(0)
摘要: synchronized是悲观锁 注意:实现了CAS的有原子类(AtomicInteger,AtomicLong,等等原子类) CAS 是乐观锁,一种高效实现线程安全性的方法 1、支持原子更新操作,适用于计数器,序列发生器等场景 2、属于乐观锁机制,号称lock-free 3、CAS操作失败时由开发 阅读全文
posted @ 2019-04-09 16:34 邂逅那青春-VING 阅读(269) 评论(0) 推荐(0)
摘要: Java内存模型JMM Java内存模型(即Java Memory Model , 简称JMM),本身是一种抽象的概念,并不真实存在,它描述的是一组规则或规范,通过这组规范定义了程序个各个变量(包括实例字段,静态字段和构成数组对象的元素)的访问方式 由于JVM运行时程序的实体是线程,而每个线程创建时 阅读全文
posted @ 2019-04-09 15:53 邂逅那青春-VING 阅读(425) 评论(0) 推荐(0)
摘要: 历史知识:JDK5之前,只有synchronized 可以用,之后就有了ReetrantLock可以用了 ReetrantLock (再入锁) 1、位于java.util.concurrnt.locks 包 juc包 2、和CountDownLatch、FutureTask、Semaphore一样基 阅读全文
posted @ 2019-04-09 12:13 邂逅那青春-VING 阅读(678) 评论(0) 推荐(0)