全国旗舰校区

不同学习城市 同样授课品质

北京

深圳

上海

广州

郑州

大连

武汉

成都

西安

杭州

青岛

重庆

长沙

哈尔滨

南京

太原

沈阳

合肥

贵阳

济南

下一个校区
就在你家门口
+

当前位置:首页 > Java

ThreadLocal是什么?有哪些使用场景?

ThreadLocal是一个本地线程副本变量工具类,在每个线程中都创建了一个ThreadLocalMap对象,简单说ThreadLocal就是一种以空间换时间的做法,每个线程可以访问自己内部ThreadLocalMap对象内的 value。通过这种方式,避免资源在多线程间共享。

2022-09-20

volatile关键字能否保证线程安全?

表现为:更新 volatile 变量时,JMM 会把线程对应的本地内存中的共享变量值刷新到主内存中;读 volatile 变量时,JMM 会把线程对应的本地内存设置为无效,直接从主内存中读取共享变量 3.

2022-09-20

Java中的线程池是如何实现的

线程池管理器:用于创建线程池,销毁线程池,添加新任务。工作线程:线程池中线程,可循环执行任务,在没有任务时处于等待状态。任务队列:用于存放没有处理的任务,一种缓存机制。任务接口:每个任务必须实现的接口,供工作线程调度任务的执行,主要规定了任务的开始和收尾工作,和任务的状态。

2022-09-20

你了解过哪些同步器?请分别介绍下。

- 必须发生指定数量的事件后才可以继续运行(比如赛跑比赛,裁判喊出3,2,1之后大家才同时跑) - CountDownLatch(int count):必须发生count个数量才可以打开锁存器 - await:等待锁存器 - countDown:触发事件

2022-09-20

AQS对资源的共享方式?

ReentrantReadWriteLock可以看成是组合式,因为ReentrantReadWriteLock也就是读写锁允许多个线程同时对某一资源进行读。不同的自定义同步器争用共享资源的方式也不同。自定义同步器在实现时只需要实现共享资源state的获取与释放方式即可

2022-09-20

热问标签

热门频道

在线咨询 免费试学 教程领取