线程池
、小H
这个作者很懒,什么都没留下…
展开
-
ReentrantReadWriteLock (读写锁)的使用
ReentrantReadWriteLock 是一个锁对象,他支持读数据锁和写数据锁;适合的使用场景1. 多线程环境2. 并且共同访问同一个资源数据3. 要求可以共享读数据,同时读4. 不能同时写数据注意事项读操作可以多线程同时一起读数据 但在写的时候,多个线程只能有一个线程在写,并且写的同时不允许去读数据使用方式 public static void main(String[] args) { //创建并发访问的账户 MyCount .原创 2020-05-28 11:22:10 · 413 阅读 · 0 评论 -
Java原子操作AtomicInteger的用法
前言: JDK1.5之后的java.util.concurrent.atomic包里,多了一批原子处理类。AtomicBoolean、AtomicInteger、AtomicLong、AtomicReference。主要用于在高并发环境下的高效程序处理,来帮助我们简化同步处理. 通过JDK1.8的AtomicIntegerkey保证多一定数据量的循环遍历保证线程安全问...原创 2019-10-30 12:29:42 · 290 阅读 · 0 评论 -
线程池的处理机制
线程池的处理流程主要分为3步· 提交任务后,线程池先判断线程数是否达到了核心线程数(corePoolSize)。如果未达到线程数,则创建核心线程处理任务;否则,就执行下一步· 接着线程池判断任务队列是否满了。如果没满,则将任务添加到任务队列中;否则,执行下一步· 接着因为任务队列满了,线程池就判断线程数是否达到了最大线程数。如果未达到,则创建非核心线程处理任务;否则,就执行饱和策略(当...原创 2019-07-24 15:04:15 · 414 阅读 · 0 评论 -
Executors工厂创建线程池
newCached ThreadPool(创建一个可缓存线程池):优点:很灵活,弹性的线程池线程管理,用多少线程给多大的线程池,不用后及时回收,用则新建缺点:一旦线程无限增长,会导致内存溢出。newFixed ThreadPool :(newFixed 丝软得扑)优点:创建一个固定大小线程池,超出的线程会在队列中等待。缺点:不支持自定义拒绝策略,大小固定,难以扩展...原创 2019-07-30 10:33:23 · 347 阅读 · 0 评论