美的java面试题,跟谁学java技术面试

二、解析

1. 硬件层的并发优化基础知识

存储器的层次结构图如下:

各级缓存耗时对比:

采用分层缓存的层次结构会带来数据不一致问题,如下图:

那么如何保证数据的一致性,现代CPU处理办法有两种:

(1) 锁系统总线;

(2) 利用缓存一致性协议MESI(Intel处理器用的比较多,还有很多其他的缓存一致性协议),大致结构如下图:

2. CPU的乱序执行

CPU中有个乱序执行的概念,概念图如下:

![](https://upload-images.jianshu.io/upload_images/24195226-0f380d5d0a073a28.png?imageMogr2/auto-

点击领取2024完整开源项目《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》

orient/strip%7CimageView2/2/w/1240)

CPU在执行指令的时候,往往不是顺序执行,但是会遵守as-if-serial原则,也就是最终一致性原则。CPU为了提高指令执行效率,会在一条指令执行过程中(比如去内存读数据),去同时执行另一条指令,前提是这两条指令没有依赖关系。虽然指令执行顺序发生改变,但是不会影响单线程执行结果。多线程情况下为了不让CUP进行指令重排序,则需要用到Volatile关键字,因为Volatile的重要作用之一就是防止指令重排序。

CPU还会存在合并写的现象。当第一条指令往上级缓存写入数据时,由于上级缓存访问速度比较慢,可能第二条指令又对上一条指令的结果进行了修改,那么CPU将这两条指令合并的最终结果一次性的写入到缓存中,这就成为合并写。

3. 如何保证不乱序执行

(1) 内存屏障:java采用的是内存屏障,内存屏障其实就是一个CPU指令,在硬件层面上来说可以扥为两种:Load Barrier 和 Store Barrier即读屏障和写屏障。主要有两个作用:

a. 阻止屏障两侧的指令重排序;

b. 强制把写缓冲区/高速缓存中的脏数据等写回主内存,让缓存中相应的数据失效。

读者福利

由于篇幅过长,就不展示所有面试题了,感兴趣的小伙伴

35K成功入职:蚂蚁金服面试Java后端经历!「含面试题+答案」

35K成功入职:蚂蚁金服面试Java后端经历!「含面试题+答案」

35K成功入职:蚂蚁金服面试Java后端经历!「含面试题+答案」

更多笔记分享

35K成功入职:蚂蚁金服面试Java后端经历!「含面试题+答案」

84)]

更多笔记分享

[外链图片转存中…(img-5qgfBnRm-1709596012985)]

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

美的集团(SZ.000333)是一家以家电制造业为主的大型综合性企业集团,于2013年9月18日在深交所上市,旗下拥有小天鹅(SZ000418)、威灵控股(HK00382)两家子上市公司。  1968年,美的创业,1980年,美的正式进入家电业,1981年注册美的品牌。目前,美的集团员工人数10.8万人,旗下拥有美的、小天鹅、威灵、华凌、安得、美芝等十余个品牌。集团在国内建有广东顺德、广州、中山;安徽合肥及芜湖;湖北武汉及荆州;江苏无锡、淮安、苏州及常州;重庆、江西贵溪、河北邯郸等14个生产基地,辐射华南、华东、华中、西南、华北五大区域;在越南、白俄罗斯、埃及、巴西、阿根廷、印度等6个国家建有生产基地。 主要家电产品有家用空调、商用空调、大型中央空调、冰箱、洗衣机、微波炉、风扇、洗碗机、电磁炉、电饭煲、电压力锅、豆浆机、饮水机、热水器、空气能热水机、吸尘器、取暖器、电水壶、烤箱、抽油烟机、净水设备、空气清新机、加湿器、灶具、消毒柜、照明等和空调压缩机、冰箱压缩机、电机、磁控管、变压器等家电配件产品。现拥有中国最完整的空调产业链、冰箱产业链、洗衣机产业链、微波炉产业链和洗碗机产业链;拥有中国最完整的小家电产品群和厨房家电产品群;在全球设有60多个海外分支机构,产品远销200多个国家和地区。  2014年,美的集团整体实现销售收入1423亿元,其中外销销售收入498亿。 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值