1111111

1,谈谈ThreadLocal(阿里一面)

  答:①:ThreadLocal 字面意思是本地线程,提供了本地线程存储机制,可以把数据存入某个线程内部,可以在任意时刻,任意方法中获取该线程缓存的数据

    ②:ThreadLocal 底层是通过ThreadLocalMap进行缓存数据的,即key-value形式缓存数据,key是当前线程对象,value是要缓存的值(源码见图)

      

 

 

 

2,并发编程三要素:

  ①:原子性:不可分割操作,多个步骤要保证同时成功或者同时失败

  ②:  有序性:程序执行的顺序和代码的顺序保持一致

  ③:可用性:一个线程对共享变量的修改,另一个线程立马能看到

 

3,京东一面:如果你提交任务到线程池,线程池队列已满,这时会发生什么?

  ①,如果线程池使用的是无界队列,线程池不会满,可以继续提交;

  ②,如果线程池使用的是有界队列,提交任务时,如果核心线程数没达到上限,那么增加线程,如果已经到达了上限,执行拒绝策略;

 

posted on 2021-07-21 16:42  WQQBO  阅读(30)  评论(0编辑  收藏  举报