R神的回答,豁然开朗

https://www.zhihu.com/question/30300585

句柄和直接引用

  1. https://www.cnblogs.com/afraidToForget/p/12584866.html
  2. https://blog.csdn.net/clover_lily/article/details/80095580
  3. https://blog.csdn.net/pf1234321/article/details/81612288?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-0.no_search_link&spm=1001.2101.3001.4242
    二者不同,HOTSPOT是直接指针形式访问对象

多线程

写的比较好的文章,总结了一些多线程的面试题。

https://www.cnblogs.com/kiqi/p/14378975.html

ThreadLocal内存泄露

SpringSecurity中用到了TL,TL是由Thread存储的ThreadLocalMap(TL的内部类)实现的,所以才能每个线程都可以存储自己的变量。

https://www.cnblogs.com/aspirant/p/8991010.html

System.out.println

可以线程间变量可见,刷新CPU缓存到本地内存

数据库