路漫漫其修远兮,吾将上下而求“锁”
Posted Danny_姜
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了路漫漫其修远兮,吾将上下而求“锁”相关的知识,希望对你有一定的参考价值。
日前面试一精神小伙,观其神态从容、举止自信。料其必学富五车,才高八斗。问其乐观锁、悲观锁、可重入锁、乃至读写锁,无不妙语连珠、出口成章。心生疑惑,欲以考题难之。一则辨其真伪,明足以察秋毫之末。二则观大佬code style,以作日后东施效颦,照猫画虎之用。
初,望其挥笔撒墨,题诗"Double check单例"一首。兄台直言未曾听闻"Double chek",并好言相劝此等歪门邪道、野史杂记不提也罢。吾大惊失色,诚惶诚恐,遂作罢。
然,余浸淫安卓十数载,亦非等闲之辈,岂容在大侠面前失了身份。再托其赐教"synchronized使用",如图threaA和threadB是否存在阻塞:
公气定神闲,眼角余光扫过题目。答曰:
尔等既然使用synchronized描述方法,则其必在线程之间互斥。结果很明显,ThreadA执行时,ThreadB被阻塞。
惊为天人!继续问之,吾欲将"lock"改为static,结果如何?奈何兄台以不耻下问之姿态,好言相劝“此等实践之贱痞,试过便知”。
何等豪气!感慨既生瑜、何生亮。本欲结束这场"煮酒论英雄",奈何受人之托,忠人之事,只能继续自取其辱。如图,加一threadC并执行
结果如下:
问之1、2、3刻锁之状态。本欲求道偏向锁、轻量级锁、重量级锁之一二,君却顾左右而言其他,实属答非所问。此题已是强弩之末,如曹孟德口中之鸡肋--食之无味,只能作罢。
路漫漫其修远兮,吾将上下而求“锁”。任你虐我千百遍,我仍待你如初级工程师。最终抱有一丝幻想,尝试以一线程排序题结束。
果不出所料,公之答案中间以Thread.sleep()隔之,附图:
终,觉难与其谋事,好言挽留一番,送君出大门。临终握其手曰:“出门右转”。
如果你喜欢本文
长按二维码关注
以上是关于路漫漫其修远兮,吾将上下而求“锁”的主要内容,如果未能解决你的问题,请参考以下文章