多线程
子阅哥哥
从删库到跑路...
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
多线程10——Disruptor
原创 2021-03-31 10:20:26 · 182 阅读 · 0 评论 -
多线程9——线程池
线程池的七个参数从源码中可以看出,线程池的构造函数有7个参数,分别是corePoolSize、maximumPoolSize、keepAliveTime、unit、workQueue、threadFactory、handler一、corePoolSize 线程池核心线程大小线程池中会维护一个最小的线程数量,即使这些线程处理空闲状态,他们也不会被销毁,除非设置了allowCoreThreadTimeOut。这里的最小线程数量即是corePoolSize。二、maximumPoolSize 线程池最大原创 2021-03-31 10:19:45 · 185 阅读 · 0 评论 -
多线程8——阻塞队列
阻塞队列原创 2021-03-31 10:18:25 · 137 阅读 · 0 评论 -
多线程7——ThreadLocal及强弱引用
ThreadLocal多线程访问同一个共享变量的时候容易出现并发问题,特别是多个线程对一个变量进行写入的时候,为了保证线程安全,一般使用者在访问共享变量的时候需要进行额外的同步措施才能保证线程安全性。ThreadLocal是除了加锁这种同步方式之外的一种保证一种规避多线程访问出现线程不安全的方法,当我们在创建一个变量后,如果每个线程对其进行访问的时候访问的都是线程自己的变量这样就不会存在线程不安全问题。ThreadLocal是JDK包提供的,它提供线程本地变量,如果创建一乐ThreadLocal变量,原创 2021-03-31 10:15:58 · 244 阅读 · 0 评论 -
多线程6——生产者消费者
Reentrantlock源码AQS的底层是CAS+volatile在消息队列尾部CompareAndSetState原创 2021-03-31 10:13:57 · 136 阅读 · 0 评论 -
多线程5——CountDownLatch、phase、ReadWriteLock、Semaphore、Exchanger、LockSupport
读写锁(共享锁,排他锁)Semaphore限流fair(公平或非公平)Exchanger原创 2021-03-31 10:12:22 · 136 阅读 · 0 评论 -
多线程4——LongAddr
LongAddr每个线程计算结果相加,线程多时占优势复习ReentrantLock——True公平锁,先在队列中判断,先到先得,False非公平锁,谁抢到归谁原创 2021-03-31 10:11:15 · 262 阅读 · 0 评论 -
多线程3——CAS
**CAS判断是否是你期望的值CAS操作ABA引起的问题例子:如何是基础类型不影响,但如果是引用就会发生问题(就像和女友分手变成前女友,之后前女友经历了其他男人,再找你复合)原创 2021-03-31 10:10:21 · 92 阅读 · 0 评论 -
多线程2——volatile
懒汉式饿汉式双重检查+volatilevolatile指令重排序原创 2021-03-31 10:07:59 · 144 阅读 · 0 评论 -
多线程1——锁
多线程的三种启动方式1继承Thread2重写Runnable3Executors.newCachedThrad线程池创建线程状态可重入锁synchrenized原创 2021-02-22 18:53:54 · 140 阅读 · 0 评论
分享