【每日阅读】2020年4月24日-Java魔法类:Unsafe应用解析

链接

https://tech.meituan.com/2019/02/14/talk-about-java-magic-class-unsafe.html

文章截图

简评

通过这篇文章,了解到,Java中底层线程安全,内存操作,锁操作,线程操作等都是由Unsafe类来操作的。并且这个类是单例,全局只有一个。而且,这个类并不是随便就能get获取的,需要执行getUnsafe获取Unsafe对象的前提,是执行get的类是由BootstrapClassLoader加载的。

这种时候就可以使用【-Xbootclasspath/a: 路径】命令,把需要的类路径包含在这个命令里,这就实现了使用BootstrapClassLoader加载指定的类,然后就可以getUnsafe啦。

还有一种方法,是反射,使用反射的方法直接按属性名获取Unsafe内的单例对象theUnsafe,也可以达到获取Unsafe对象的目的。

总之,Unsafe是很底层的一个类,很强大。

原创文章,作者:geekgao,如若转载,请注明出处:https://www.geekgao.cn/archives/1514

(0)
geekgaogeekgao博主
上一篇 2020年4月24日
下一篇 2020年4月26日

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

GitHub
分享本页
返回顶部

Warning: error_log(/usr/local/lighthouse/softwares/wordpress/wp-content/plugins/spider-analyser/#log/log-1203.txt): failed to open stream: No such file or directory in /usr/local/lighthouse/softwares/wordpress/wp-content/plugins/spider-analyser/spider.class.php on line 2900