01 2017 档案

摘要:前面我们简单介绍了线程池的使用,但是对于其如何运行我们还不清楚,Executors为我们提供了简单的线程工厂类,但是我们知道ThreadPoolExecutor是线程池的具体实... 阅读全文
posted @ 2017-01-23 18:01 rickiyang 阅读(335) 评论(0) 推荐(0) 编辑
摘要:上节我们简单介绍了线程池,这次我们就来使用一下。Executors提供四种线程池,分别是:newCachedThreadPool,newFixedThreadPool ,new... 阅读全文
posted @ 2017-01-21 23:25 rickiyang 阅读(226) 评论(0) 推荐(0) 编辑
摘要:好的软件设计不建议手动创建和销毁线程。线程的创建和销毁是非常耗 CPU 和内存的,因为这需要 JVM 和操作系统的参与。64位 JVM 默认线程栈是大小1 MB。这就是为什么说... 阅读全文
posted @ 2017-01-19 21:42 rickiyang 阅读(302) 评论(0) 推荐(0) 编辑
摘要:今天我们介绍原子类的最后一个类型—-对象的属性修改类型: AtomicIntegerFieldUpdater,AtomicLongFieldUpdater,AtomicRefe... 阅读全文
posted @ 2017-01-17 22:14 rickiyang 阅读(520) 评论(0) 推荐(0) 编辑
摘要:这一节我们将探讨引用类型原子类:AtomicReference, AtomicStampedRerence, AtomicMarkableReference。AtomicRef... 阅读全文
posted @ 2017-01-15 16:18 rickiyang 阅读(531) 评论(0) 推荐(0) 编辑
摘要:上一节我们介绍过三个基本类型的原子类,这次我们来看一下数组类型: AtomicIntegerArray, AtomicLongArray, AtomicReferenceArr... 阅读全文
posted @ 2017-01-13 21:38 rickiyang 阅读(399) 评论(0) 推荐(0) 编辑
摘要:上一节我们说到了基本原子类的简单介绍,这一节我们先来看一下基本类型: AtomicInteger, AtomicLong, AtomicBoolean。AtomicIntege... 阅读全文
posted @ 2017-01-12 22:44 rickiyang 阅读(475) 评论(0) 推荐(0) 编辑
摘要:今天我们来看一下JUC包中的原子类,所谓原子操作是指不会被线程调度机制打断的操作;这种操作一旦开始,就一直运行到结束,中间不会有任何 context switch (切换到另一... 阅读全文
posted @ 2017-01-12 21:32 rickiyang 阅读(253) 评论(0) 推荐(0) 编辑
摘要:上一篇我们介绍了CountDownlatch,我们知道CountDownlatch是“在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待”,即CountDow... 阅读全文
posted @ 2017-01-11 23:20 rickiyang 阅读(263) 评论(0) 推荐(0) 编辑
摘要:CountDownLatch 是一个非常实用的多线程控制工具类。” Count Down ” 在英文中意为倒计数, Latch 为门问的意思。如果翻译成为倒计数门阀, 我想大家... 阅读全文
posted @ 2017-01-10 23:24 rickiyang 阅读(297) 评论(0) 推荐(0) 编辑
摘要:前面我们已经分析过JUC包里面的Lock锁,ReentrantLock锁和semaphore信号量机制。Lock锁实现了比synchronized更灵活的锁机制,Reentra... 阅读全文
posted @ 2017-01-07 21:36 rickiyang 阅读(311) 评论(0) 推荐(0) 编辑
摘要:Semaphore,从字面意义上我们知道他是信号量的意思。在java中,一个计数信号量维护了一个许可集。Semaphore 只对可用许可的号码进行计数,并采取相应的行动。拿到信号量的线程可以进入代码,否则就等待。通过acquire()和release()获取和释放访问许可。 信号量Semaphore 阅读全文
posted @ 2017-01-04 22:12 rickiyang 阅读(315) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示