博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java面试题 JDK BAT面试题系列 基础篇(十二)
阅读量:5874 次
发布时间:2019-06-19

本文共 665 字,大约阅读时间需要 2 分钟。

● 请问JDK和JRE的区别是什么?

考察点:JDK

参考回答:

Java运行时环境(JRE)是将要执行Java程序的Java虚拟机。它同时也包含了执行applet需要的浏览器插件。Java开发工具包(JDK)是完整的Java软件开发包,包含了JRE,编译器和其他的工具(比如:JavaDoc,Java调试器),可以让开发者开发、编译、执行Java应用程序。

● Java中的LongAdder和AtomicLong有什么区别?

考点:JDK

参考回答:

JDK1.8引入了LongAdder类。CAS机制就是,在一个死循环内,不断尝试修改目标值,直到修改成功。如果竞争不激烈,那么修改成功的概率就很高,否则,修改失败的的概率就很高,在大量修改失败时,这些原子操作就会进行多次循环尝试,因此性能就会受到影响。 结合ConcurrentHashMap的实现思想,应该可以想到对一种传统AtomicInteger等原子类的改进思路。虽然CAS操作没有锁,但是像减少粒度这种分离热点的思想依然可以使用。将AtomicInteger的内部核心数据value分离成一个数组,每个线程访问时,通过哈希等算法映射到其中一个数字进行计数,而最终的计数结果,则为这个数组的求和累加。热点数据value被分离成多个单元cell,每个cell独自维护内部的值,当前对象的实际值由所有的cell累计合成,这样热点就进行了有效的分离,提高了并行度。

转载于:https://www.cnblogs.com/readlearn/p/10952757.html

你可能感兴趣的文章
如何使用angularjs操作cookie
查看>>
POJ 3321 Apple Tree DFS序+fenwick
查看>>
POJ 1789-Truck History
查看>>
【Android】8.4 让主题自适应不同的Android版本
查看>>
REST_FRAMEWORK加深记忆-三种CLASS VIEW的进化史
查看>>
HDU5280 Senior's Array(简单DP)
查看>>
mysql Access denied for user 'root'@'localhost' (using password: YES)
查看>>
VS2015 打开html 提示 未能完成操作 解决办法
查看>>
.NET-"/"应用程序中的服务器错误
查看>>
回击MLAA:NVIDIA FXAA抗锯齿性能实測、画质对照
查看>>
windows tomcat 优化
查看>>
给自定义cell赋值代码
查看>>
GCD
查看>>
linq 实现动态 orderby
查看>>
四版人民币补号大全
查看>>
言未及之而言,谓之躁;言及之而不言,谓之隐;未见颜色而言,谓之瞽(gǔ)...
查看>>
MYSQL查询一周内的数据(最近7天的)
查看>>
Redis的缓存策略和主键失效机制
查看>>
禁止body滚动允许div滚动防微信露底
查看>>
Xtreme8.0 - Kabloom dp
查看>>