多线程
springbounce
这个作者很懒,什么都没留下…
展开
-
java各种锁
1. synchronized和reentrantlock的区别,ReentrantLock的可重入的含义是什么 sync是悲观锁,认为并发写多读少,不给别人资源 lock是乐观锁,认为并发读多写少,给别人读 sync是非公平性锁,可能存在等待时间最长的线程却一直无法获取资源的情况 lock是公平锁,先到先得 lock是再入锁,就是说当线程试图获取锁时,发现锁已被人持有了,而持有的人正是他自己,那...原创 2019-07-16 14:25:45 · 126 阅读 · 0 评论 -
java并发包Executors中的4种线程池
Executors类中,提供可创建的四种大类的线程池 1. newCachedThreadPool 一句话说清:动态创建线程和移除60s不用的老线程。 适合的场景:拥有大量执行时间短的异步任务。 /** * Creates a thread pool that creates new threads as needed, but * will reuse previously ...原创 2019-07-16 15:40:07 · 338 阅读 · 0 评论 -
理解ThreadLocal
1 TreadLocal的作用是什么? 并发问题的实质是多个线程想要写同一个变量,那么如果给多个线程创建不同的变量,这个问题就解决了。 类似局部变量的思路,所以叫线程局部变量。 比如用户访问网站,每个用户一个userid,那么各个线程用自己的userid,互不影响。 2 使用TreadLocal和直接使用局部变量,有什么不同? threadlocal 提供了和线程操作相关的代理接口 3 Tread...原创 2019-07-17 12:25:04 · 101 阅读 · 0 评论