heoller
heoller
全部文章
Java
docker(1)
JVM(2)
Kafka(3)
Linux(1)
maven(1)
Mybatis(1)
Mysql(5)
Netty(3)
RabbitMQ(4)
Redis(1)
Spring(4)
Zookeeper(1)
归档
标签
去牛客网
登录
/
注册
Heoller Blog
长风破浪会有时,直挂云帆济沧海。
全部文章
/ Java
(共4篇)
Java并发之线程池
来自专栏
使用线程池是为了减少创建和销毁线程带来的资源消耗。线程池适用于单任务处理时间短且任务量较大的场景。 线程池核心参数 参数 说明 int corePoolSize 核心线程数 int maximumPoolSize 最大线程数 long keepAliveTime 非核心线程最大...
java
juc
线程池
2020-08-29
0
615
Java并发之CountDownLatch
当存在多线程执行任务,需要等待指定数量的子线程都执行完后,再执行主线程任务场景时,可以使用CountDownLatch类来实现。其静态内部类Sync继承了AbstractQueuedSynchronizer,主要实现了AQS的tryAcquireShared和tryReleaseShared方法。 ...
java
juc
CountDownLatch
2020-08-19
0
499
Java并发之Semaphore
Semaphore可以用来控制访问临界资源的线程数,也是基于AQS框架的。 CLH首个线程结点唤醒后续线程节点 int r = tryAcquireShared(arg); // 可用“权限”数(state)判断 if (r >= 0) { // 向后广播,唤醒后继节点 // ...
aqs
java
juc
Semaphore
2020-08-19
0
515
Java并发之syncronized
syncronized原理 syncronized是基于java对象加锁的。java对象创建后jvm会给该对象维护一个管程(Monitor)对象, Monitor最终又依赖操作系统维护的Mutex(互斥量)进行一系列锁操作, 比如: Monitor.Enter(获取锁)、Monitor.Exit(释...
synchronized
java
juc
2020-08-15
0
575