Java并发编程:volatile关键字解析

推荐一篇好文 通过这篇文章你能知道 volatile 原子性 可见性 有序性 cpu缓存内存的关系


#笔试题目#
全部评论
好文,感谢分享
点赞 回复 分享
发布于 2019-08-26 11:41

相关推荐

10-23 11:09
已编辑
上海交通大学 Java
纪念并记录下秋招第一个二面,发发面经,攒人品,许愿oc!时间线:9.18号投递9.20号笔试+AI面试,3道编程题A了2道10.9号一面,应该是被某部门捞了,但也是后端开发10.12号二面10.17号hr面10.23发现回人才库(罢了罢了)一面:自我介绍你的研究方面和岗位不是很匹配,怎么看详细描述浏览器输入网址到看到网页的过程刚刚提到的HTTP协议属于OSI的第几层,是基于什么协议的介绍TCP协议的三次握手TCP协议用哪些方式保证传输信息的可靠性什么是TCP的拥塞控制(慢启动、拥塞避免、快重传、快恢复)TCP在什么情况下判断数据包丢失,触发快重传(发送方连续收到3个相同的ACK)TCP流量控制的算法(滑动窗口)除了窗口,还有哪些限流算法(当时没回答出来,复盘时想起应该还有令牌桶算法和漏桶算法)HTTP和HTTPS请求及协议的区别HTTPS用到的安全协议是什么使用的加密算法是对称加密和还是非对称(当时回答非对称,复盘时想起应该是在证书验证阶段使用非对称,后面的数据传输为对称加密)私钥谁保管进程与线程的区别知道协程吗,协程与进行、线程的区别进程的基本状态进程间的通信方式Linux下的IO模型(当时只回答了BIO和NIO)除了BIO和NIO,你知道还有多路复用吗你知道Linux下的系统调用吗(不清楚,面试官补充是select、poll这种,但是确实没准备到)Spring的IOC是什么Spring对象是线程安全的吗?(回答,Spring的bean一般是单例的,单例的无状态的bean是线程安全的,如果是有状态的,即有可变的成员变量,就不是线程安全的)如何解决有状态的bean的线程安全问题?(简单方法将可变的成员用final修饰变为不可变,但是推荐使用ThreadLocal保存可变成员变量)有什么办法定义多例bean介绍ThreadLocal底层数据结构父线程定义的TreadLocal如何在子线程获取到(这个不会,瞎说的,面试官有引导,但是依然没说对)子线程中把某个变量清理掉,父线程还能拿到那个变量吗(这个也不会)线程池的重要参数核心线程是否会被回收(不会被回收)拒绝策略有哪些抢购场景如何设计线程池(瞎说的)锁的可重入性公平锁和非公平锁的区别MySOL的事务隔离级别Spring如何实现事务如何使用AOP技术,简单地说就是把两个插入同时放到一个事务中你知道RPC吗(不知道)你知道CAP吗(不知道,RPC和CAP都没准备到,应该是Spring cloud中的,后面反问的时候面试官也提到对Spring cloud相关的一套东西都不了解)手撕:选择数组中第K个大的元素,我直接Array.sort,然后输出k-1过了反问:多久可以收到下一次面试通知面试官提出一个我的问题:只了解基础的东西不够,实际工作中基础体现得不是很明显,大部分还是实际使用的中间件(确实,没有实习,实践经历是硬伤啊!)工作地是否有问题因为手撕太简单了而且笔试过了好久才有的一面,部门也跟投递时不同明显被捞,我以为是kpi面,但是上午面完,下午就收到了二面。二面:聊项目(一个大模型相关的,跟后端开发没有关系,但是因为跟毕设相关很熟,自我感觉回答得不错,第一次二面觉得很神奇)手撕:leetcode026重排列表反问:还有几面部门业务上午面的,中午收到HR面10.17 HR面一些比较基础的问题等待oc! (等个鬼 10.23回人才库) #美团# #美团求职进展汇总# #美团面经#
点赞 评论 收藏
分享
10-12 11:52
已编辑
西安体育学院 Java
四个环节:1.八股 2.项目 3.个人相关 4.介绍公司相关1.转发与重定向区别url访问网址的全过程讲一下反射有没有适合使用反射的场景以设计的思想去想反射适用于哪些场景讲一下对HashMap原理理解对于Map这种数据结构适用的场景垃圾回收的目的是什么,处理了什么问题讲一下G1讲一下线程池线程核心参数线程参数中空闲队列的作用抽象的说一下 锁是在什么情况下适用于什么场景解决什么问题你会在什么情况下选择使用分布式锁,什么情况下使用单体单机锁?你最终选择的判断标准是什么?2.项目缓存怎么做的?方案是怎么做的?从缓存框架来看有什么优化空间?(不会,面试官说可以做多级缓存)缓存做的时候有没有考虑过会出现哪些问题?(面试官引导问 缓存内存相关)做缓存的时候有没有考虑过兜底方案?(面试官说,考虑自动化巡检,预警)限流接口如何设计3.哪些渠道学习学习方式有什么逛GitHub有没有感兴趣的东西有没有研究过大模型更高级的用法(面试官说Agent)自己最近做的项目什么的想发展的方向,未来的规划4.反问,感觉问不下去了,面试官很好,说想问就问。问了培养计划,多久可以参与开发工作。,背了几天的八股,没有对上的/(ㄒoㄒ)/~~。我也想八股吟唱。面试官很好,全程不会的就会给我提示以及给出自己的问题解决方案。好公司不知道,这个面试官很开朗人很好。基本上寄了,希望牛油们能早日拿offer#数字马力#更新——————竟然进复试了,很多问题感觉都没咋答出来,后面的问题感觉是面试官给我讲了很多。这一次我一定要把握机会。大家都要加油。
点赞 评论 收藏
分享
10-21 16:44
已编辑
门头沟学院 Java
全程八股,没问项目,面试官很好,有些问题会深入问一下。总时长50分钟左右。唯一有一点是有些问题没答好,要用反问小怼我一下(其实很多面试官都是这样的)算法很简单,但是做的时候有点小错误。更新:10.15一面,19约二面自我介绍项目是自己做的吗(然后就没有问了)讲一下hashmap和concurrentHashmap的底层实现结构,有什么区别追问,hashmap扩容是在什么时候synchronized、reentrantlock是什么,底层原理怎么做的,有什么区别volatile 关键字是什么,有什么作用(可见性、有序性、涉及Java内存模型、指令重排序)线程池有了解吗,底层是如何运行的?追问,一个任务提交到线程池,如何处理(主要看核心、最大线程数、阻塞队列、拒绝策略)Spring 三级缓存是什么,解决什么问题(主要解决循环依赖)追问,其中代理是拿来做什么的(AOP)Spring中的代理有哪些方法?(JDK动态代理与CGLIB动态代理)如何标记一个对象是否能被清除(引用计数法、可达性分析法)可达性分析的源头是什么?(GC Root,如虚拟机栈,方法区静态属性引用的对象等)JVM有哪些区域,都有什么功能?JVM GC有了解吗,有哪些方法?(标记-清除,标记-交换等,具体实现有G1等)Redis 缓存穿透、击穿、雪崩是什么?追问,各有什么对应的解决方法吗?Redis中的持久化有了解吗(RDB、AOF、混合持久化)MySQL的主从同步知道吗MySQL的MVCC是什么?解决什么问题?(多版本并发控制,解决不可重复读,配合间隙锁解决大部分幻读)算法题:给n颗糖果,如果这一天是素数就吃n/3+1,不是素数就吃n/2+1(向下取整),问能吃多少天?部门介绍:是做安全相关的部门,为公司提供业务上的安全检查服务。反问:部门主要用什么语言、技术栈,有新人培养计划吗答:Java、Python相关,实习生有导师培养,秋招没有。总结:八股答得还行,少数几个问题答的少,其他都答得不错。
查看21道真题和解析
点赞 评论 收藏
分享
评论
2
14
分享
牛客网
牛客企业服务