多线程类
cuichunchi
java开发 后期 转向了大数据开发 有小伙伴想转大数据可以咨询我哟
展开
-
使用阻塞队列批量导入与使用forkjoinPool框架的导入对比
使用阻塞队列批量导入与使用forkjoinPool框架的导入对比原创 2017-12-01 21:07:51 · 2052 阅读 · 0 评论 -
多线程的同步器之倒计时门栓(CountDownLatch)的使用
CountDownLatch,一个同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待。如线程A需要等待线程B执行完成(线程A和B可以视为单线程或者多个线程),线程A才能执行。主要方法 public CountDownLatch(int count); public void countDown(); public void await(原创 2018-01-11 16:53:22 · 892 阅读 · 0 评论 -
ThreadLocal本地线程使用
ThreadLocal本地线程,可以为每个线程复制一份变量,防止多线程下数据不安全的问题。一下是测试数据spring mvc +spring@Controller@RequestMapping("/index")public class TestControler {final ThreadLocal<RestBean> local = new ThreadLoca...原创 2019-03-27 09:40:23 · 642 阅读 · 0 评论 -
一篇文章即可读懂java中的锁机制
在java中的锁分为以下(其实就是按照锁的特性和设计来划分):1、公平锁/非公平锁2、可重入锁3、独享锁/共享锁4、互斥锁/读写锁5、乐观锁/悲观锁6、分段锁7、偏向锁/轻量级锁/重量级锁8、自旋锁(java.util.concurrent包下的几乎都是利用锁)从底层角度看常见的锁也就两种:Synchronized和Lock接口以及ReadWriteLock接口...原创 2019-03-27 09:45:16 · 23361 阅读 · 1 评论 -
jdk 1.8 并发包下的Unsafe类的详解
在java.util.concurrent的并发包中几乎各类中都会使用 sum.msic.Unsafe的这个类sum.msic.Unsafe中的方法都是本地方法(native),java无法访问系统底层,所以调用本地方法来调用C程序来硬件级别的原子操作。Unsafe类主要提供以下功能:1、通过unsafe可以分配内存、扩充内存、释放内存 如:本地方法(allocateMem...原创 2019-03-27 09:45:28 · 816 阅读 · 0 评论 -
线程池ThreadPoolExecutor源码分析
1.线程池的作用一方面当执行大量异步任务时候线程池能够提供较好的性能,在不使用线程池的时候,每当需要执行异步任务时候是直接 new 一线程进行运行,而线程的创建和销毁是需要开销的。使用线程池时候,线程池里面的线程是可复用的,不会每次执行异步任务时候都重新创建和销毁线程。另一方面线程池提供了一种资源限制和管理的手段,比如可以限制线程的个数,动态新增线程等,每个ThreadPoolExecu...原创 2019-08-16 19:23:13 · 224 阅读 · 0 评论