游戏电视苹果数码历史美丽
投稿投诉
美丽时装
彩妆资讯
历史明星
乐活安卓
数码常识
驾车健康
苹果问答
网络发型
电视车载
室内电影
游戏科学
音乐整形

Java多线程,被面试官难倒了

  本期是【大厂面试】系列文章的第5期,题目来源于网络。面试现场
  面试官:看你简历上写了精通多线程,来聊聊,为什么要使用多线程呢?
  独白:精通。。。您不会真信了吧。。。
  大彬:使用多线程最主要的原因是提高系统的资源利用率。
  大彬:多个线程同时运行,可以减少线程上下文切换的开销,提高并发的能力和CPU的利用效率。
  大彬:在平时工作中多线程也是常见的。比如Tomcat每处理一个请求都会从线程连接池里取一个线程去处理。
  面试官:嗯,那什么场景可以使用多线程呢?
  大彬:一些并发量大的场景,比如读入大量文件写入数据库,使用多线程能够极大提高效率。
  大彬:耗时比较长的任务,比如用户注册之后发送邮件、短信之类的操作,这种任务就算失败了也不是特别重要,可以使用异步线程去处理。
  大彬:定时任务,比如定期更新配置文件、备份数据之类的任务。
  面试官:嗯,平时在使用多线程的时候,可能会遇到线程安全的问题吧。讲讲什么是线程安全?
  大彬:我是这么理解的,当多个线程访问一个对象时,如果不用考虑这些线程在运行时环境下的调度和交替执行,也不需要进行额外的同步,调用这个对象的行为都可以获得正确的结果,那这个对象就是线程安全的。
  面试官:那你平时怎么处理线程安全问题的?
  独白:幸亏看了【面试笔记】,不慌哈哈
  大彬:这个还得具体问题具体分析。首先判断有没有线程安全问题,若有则根据具体的情况去处理线程安全的问题。
  大彬:比如涉及到操作的原子性,可以考虑使用原子类。
  大彬:如果涉及到对线程的控制,可以考虑线程工具类CountDownLatchSemaphore等等。
  大彬:集合类的话,考虑java。util。concurrent包下的集合类。
  大彬:还有synchronized和lock包下的类,redis分布式锁等。
  面试官:刚刚提到synchronized,讲讲它的底层原理?
  独白:底层原理。。。裂开
  大彬:synchronized同步代码块的实现是通过monitorenter和monitorexit指令,其中monitorenter指令指向同步代码块的开始位置,monitorexit指令则指明同步代码块的结束位置。当执行monitorenter指令时,线程试图获取锁也就是获取monitor的持有权。
  独白:monitor对象存在于每个Java对象的对象头中,synchronized锁便是通过这种方式获取锁的,这也是为什么Java中任意对象可以作为锁的原因。
  大彬:其内部包含一个计数器,当计数器为0则可以成功获取,获取后将锁计数器设为1也就是加1。相应的在执行monitorexit指令后,将锁计数器设为0,表明锁被释放。如果获取对象锁失败,那当前线程就要阻塞等待,直到锁被另外一个线程释放为止。
  大彬:synchronized修饰的方法并没有monitorenter指令和monitorexit指令,取得代之的确实是ACCSYNCHRONIZED标识,该标识指明了该方法是一个同步方法,JVM通过该ACCSYNCHRONIZED访问标志来辨别一个方法是否声明为同步方法,从而执行相应的同步调用。
  面试官:那synchronized和ReentrantLock有什么区别呢?
  大彬:使用synchronized关键字实现同步,线程执行完同步代码块会自动释放锁,而ReentrantLock需要手动释放锁。synchronized是非公平锁,ReentrantLock默认是非公平锁,可以设置为公平锁。ReentrantLock上等待获取锁的线程是可中断的,线程可以放弃等待锁。而synchonized会无限期等待下去。ReentrantLock可以设置超时获取锁。在指定的截止时间之前获取锁,如果截止时间到了还没有获取到锁,则返回。ReentrantLock的tryLock()方法可以尝试非阻塞的获取锁,调用该方法后立刻返回,如果能够获取则返回true,否则返回false。
  面试官:什么叫公平锁和非公平锁?
  大彬:如果是按照线程访问顺序去获取对象锁,则为公平锁,否则为非公平锁。
  面试官:知道什么是CAS吗?
  大彬:嗯,CAS全称CompareAndSwap,比较与交换,是乐观锁的主要实现方式。CAS在不使用锁的情况下实现多线程之间的变量同步。ReentrantLock内部的AQS和原子类内部都使用了CAS。
  大彬:CAS算法涉及到三个操作数:需要读写的内存值V;进行比较的值A;要写入的新值B。
  大彬:只有当V的值等于A时,才会使用原子方式用新值B来更新V的值,否则会继续重试直到成功更新值。
  大彬:以AtomicInteger为例,AtomicInteger的getAndIncrement()方法底层就是CAS实现,关键代码是compareAndSwapInt(obj,offset,expect,update),其含义就是,如果obj内的value和expect相等,就证明没有其他线程改变过这个变量,那么就更新它为update,如果不相等,那就会继续重试直到成功更新值。
  面试官:基础掌握的不错,今天面试就到这吧

win10纯净版系统取消开机密码的设置方法有不少深度技术的用户都会在电脑上设置开机密码来防止小孩或者别人来操作自己的电脑。但是有一位深度win10纯净版的小伙伴觉得每一次开机都要输入开机密码,略微有些麻烦。于是就想要取……打破信息孤岛,如何从API数据中台突围烟囱林立,零售企业数据孤岛现象突出所谓数据孤岛,是指零售企业不同组织机构之间、不同部门之间或不同软件之间的数据无法连接互动,数据信息不能共享,设计、管理、生产的数据不能相……开放式机器人地轨的优势和组成结构机器人第七轴又称机器人外部轴、行走轴,地轨。第七轴机器人的地面式系列,轨道基座采用高强度型钢与优质钢板焊接而成,大限度的保障其精度,有效避免变形和振动的情况出现。控制系统采用自……十月手机推荐3000到4000元价位如果要选两台手机我会选iqoo8和一加9非要选一台的话我选一加9目前一加9起售价3399比iqoo8便宜了400块钱……5000mAh电池实用性怎么样?OPPOK9s续航实测满满的众所周知,现在市面上大多数旗舰机型的电池容量基本上都在4500mAh左右,就连业内巨头苹果的最新旗舰机型iPhone13ProMax,它的电池容量也不过只有4352mAh。一般……颜值不输iPhone13,价格还至高降200,国产手机也太懂这几年,手机直屏直角边框重新成为了潮流,今年的iPhone13也同样延续了这一设计,看起来十分精致高级。除了苹果之外,国产阵营也有不少采用直角边框设计的高颜值机型,其中OPPO……vivoX50系列微云台技术亮相实现3。2倍OIS光学防抖面2020年5月21日,vivo举办了一场主题为微云台大影像的X50系列线上沟通会,旨在更为详细的解读即将于6月1日正式发布的旗舰级影像手机X50系列的影像专项技术。本场沟通会围……华为FreeBudsPro智慧动态降噪体验如何?用了回不去由于工作和住处相隔较远,我通勤基本都是靠地铁,每天通勤路上的噪音都非常大,因此一直想着给自己换一款降噪耳机。前段时间,我看到华为推出了支持智慧动态降噪的华为FreeBudsPr……李锦记家族继续发挥企业优势,力促职业教育发展李锦记希望厨师项目是一个由李锦记家族创办。10年前,多数人还在用着翻盖手机,用2G网络玩偷菜;出门离不开现金,没有扫码和刷脸;中国十二五开端,进入全面建设小康社会的关键时期。。……一梦江湖全新好物即将上线,有了这张床,江湖任你躺先来庆贺一波!万众瞩目的金铲子杯多人摸金活动结束了,古墓探险也告了一段落。与此同时,很多伙伴们已经获奖,从游戏内到游戏外,设有摸金劳模奖,最佳摸金侠侣奖,好胆冲锋奖,高光……这里竟然也藏着一个神秘的魔鬼三角在北纬3220西经6445的大西洋处有一个地带被称为魔鬼三角。它的另一个名字大家可能听说过的比较多,也就是百慕大三角,一个发生过许多神秘事件,至今也是众说纷纷的地区。要耐……你家熊孩子还是一直上网这些家长控制应用帮助你对于拥有智能手机的孩子的父母来说,对于网络肯定是又爱又恨的,一方面,网络虽然给孩子的日常生活和学习带来了巨大的方便,但是另一方面,网络很可能使孩子沉迷于其中,在孩子还缺少辨别是……
燕氏观点日本小说推理家东野圭吾东野圭吾(,HigashinoKeigo)日本推理小说天王。1958年2月4日出生于日本大阪。毕业于大阪府立大学电气工学专业,之后在汽车零件供应商日本电装担任生产技术工程师,并……Android测试简答题1。简述如何搭建Android开发环境。答:Android开发环境的搭建分为3步,具体如下:AndroidStudio工具的下载、安装、以及相关配置。在安装过程中选择该工……实体店如何抓住线上流量提高店铺营收?实体店小程序营销方案实体店在经营中,常常因为客流量与营业额而发愁,于是转战线上,利用小程序实现线上线下相结合销售,以此提升品牌影响力与营收能力,那么商家应该如何把握线上流量机会?一、实体店面……安美瑞A8无叶净化风扇极限测试购买前需要了解的参数对于传统的落地扇大家应该都不陌生,传统的落地扇不仅是消暑降温的好帮手,而且其价格优美也是家家户户可以消费得起的家用电器。对于本人来说在申请此款风扇之前,对于无扇叶风扇的认知几乎……燕氏观点山西大学城介绍(榆次区)山西大学城是经过山西省政府多次研究而决定建设的山西省高校新校区,位于太原市与晋中市榆次区交界处,距太原市中心25公里,紧邻太原武宿国际机场。大学城一期规划占地9900亩,总建筑……体验极致塞满的痛感,乔思伯A4ITX,Z490i平台装机展示有些废话:赶着618好价,这次帮老同学搞了台迷你游戏主机,配置方面算得上是蛮高级的,牙粉有钱!平台选用的是牙膏厂最新的Z490,搭配到10700K的CPU以及2070SU……苹果关于iPad,你们都想错了目录不断细分的市场生产力从哪来永远过剩的性能iPad的定位逐渐清晰WWDC结束了,网友们失望居多。确实在发布会前,媒体的传闻将观众的阈值拔得过高。想买iPad的用户在等,……车辆如何保养?看看老司机的秘诀指南我有一位朋友,外号老司机,对车辆的保养格外有心得。三年前买的新车,至今没有出现过任何故障,车漆内饰光亮如新。仿佛一座偌大的反光镜,亮瞎我的钛合金狗眼,让我不由自主地想去采访他,……日系靠边站?吉利发布雷神动力,热效率高达43。32说到混动,以丰田、本田为代表的车企总会一时间蹦出脑海,它们研发的混合动力系统技术已经达到了相对成熟的地步。但随着国内技术品牌的进步,混动领域也出现了更多自主品牌的面孔,先有比亚……ZEEKRPower极能正式亮相成都车展,极氪全面打破用户充第二十四届成都国际车展于8月29日开幕,智能电车新品牌极氪也在此次车展中带来了子品牌ZEEKRPower极氪能源(简称极能)的发布。针对于当下纯电车型的续航里程焦虑,极氪表示将……realme以越级体验打动年轻用户群体,Q1市场增速荣获第一不知道大家发现没有,这几年手机市场之间的竞争愈发激烈,导致手机同质化变得越来越严重了,许多用户想要挑选一款自己喜欢的手机也困难了起来。但realme品牌的到来却打破了这样的僵局……这才是真正的Steam掌机,性能又提升20,无限扩充固态硬盘很多GPD掌机玩家翘盼的升级终于来了,WIN2由之前的m37Y30处理器全新升级到m38100Y。虽然8100Y处理器早已被大家熟知,但比照7y30具体强到哪,恐怕没几个人能说……
友情链接:易事利快生活快传网聚热点七猫云快好知快百科中准网快好找文好找中准网快软网