线程
LuuCloud
芝芝不倦的技术极客
展开
-
深入理解java 线程池
在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题: 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。 那么有没有一种办法使得线程可以复用,就是执行完一个任务,并不被销毁,而是可以继续执行其他的任务? 在Java中可以通过线程池来达到这样...原创 2019-03-12 10:48:41 · 134 阅读 · 0 评论 -
线程池原理及使用-源码
目录: 一.Java中的ThreadPoolExecutor类 二.深入剖析线程池实现原理 三.使用示例 一.Java中的ThreadPoolExecutor类 java.uitl.concurrent.ThreadPoolExecutor类是线程池中最核心的一个类,因此如果要透彻地了解Java中的线程池,必须先了解这个类。下面我们来看一下ThreadPo...原创 2019-02-22 16:10:16 · 146 阅读 · 0 评论 -
并发编程-CAS
前言概述CAS的目的CAS存在的问题concurrent包的实现前言在JDK 5之前Java语言是靠synchronized关键字保证同步的,这会导致有锁锁机制存在以下问题:(1)在多线程竞争下,加锁、释放锁会导致比较多的上下文切换和调度延时,引起性能问题。(2)一个线程持有锁会导致其它所有需要此锁的线程挂起。(3)如果一个优先级高的线程等待一个优先级低的线...原创 2019-03-12 14:35:43 · 204 阅读 · 0 评论