JUC
文章平均质量分 88
我认不到你
如果感觉我写的东西对您有用,不要吝啬您的赞,Thanks♪(・ω・)ノ
展开
-
JUC_线程安全的集合类与常用辅助类
我们常用的集合类(ArrayList、LinkedList、HashSet、TreeSet、HashMap、TreeMap等),为了实现效率的提高,一般都不会加锁,这样就造成了线程的不安全原创 2022-10-24 10:38:37 · 234 阅读 · 0 评论 -
JUC_线程池详解与线程池调优
众所周知,我们在创建线程的时候,需要new一个Thread的对象,这样每次都创建一个对象,不仅会消耗不必要的资源,而且如果并发量特别高的话,线程就会创建得特别的多,会造成OOM(内存溢出)的问题那么线程池可以解决这些问题,假设(我这里为了方便初学的同学,可以先这样理解着),我们创建一个有10个线程的线程池放在那,外部请求来了,会调用线程池内部的10个线程,每个线程执行完自己的任务,会跑回线程池待着,等待下一个任务的调用,省去了创建线程的时间,并且如果并发量高了的话,我们会禁止其他请求的访问,就不会一直重原创 2022-10-19 14:32:26 · 1141 阅读 · 0 评论 -
JUC_8锁问题
“八锁”的含义:就是八个关于锁的问题原创 2022-09-20 11:04:16 · 193 阅读 · 0 评论 -
JUC_生产者消费者问题
生产者消费者问题(Producer-consumer problem),也称有限缓冲问题(Bounded-buffer problem),是一个多线程同步问题的经典案例。该问题描述了两个共享固定大小缓冲区的线程——即所谓的“生产者”和“消费者”——在实际运行时会发生的问题。生产者的主要作用是生成一定量的数据放到缓冲区中,然后重复此过程。与此同时,消费者也在缓冲区消耗这些数据。该问题的关键就是要保证生产者不会在缓冲区满时加入数据,消费者也不会在缓冲区中空时消耗数据。原创 2022-09-20 11:03:39 · 163 阅读 · 0 评论 -
JUC_锁是什么,Synchronized与Lock的区别
多个线程在操作一个资源类的时候,因为操作时间大致相同,异步执行,会造成数据的写入异常。锁就是解决这个问题的,锁的本质就是队列我举个例子,你去吃饭,但不排队,都不排队,很多学生(多线程)一拥而上一个窗口(资源类),食堂大妈也不知道谁要的什么菜,就听到谁喊要什么菜,就打这个菜(线程不安全)加锁就是指在窗口设置了一个拦截线,只有排队(队列)才能打饭,这样就保证了每个人打的菜才是自己想要的(线程安全)原创 2022-09-20 11:02:49 · 278 阅读 · 0 评论 -
JUC_回顾多线程
JUC是java.util.concurrent包的简称,在Java5.0添加,目的就是为了更好的支持高并发任务。让开发者进行多线程编程时减少竞争条件和死锁的问题!原创 2022-09-20 11:01:55 · 156 阅读 · 0 评论