我主動給面試者加薪 1K 的死鎖面試題和 jstack 分析過程
點選上方“業餘草”,選擇“置頂公眾號”
第一時間獲取技術乾貨和業界資訊!
昨天,我面試了不少程式設計師,很多程式設計師和背書一樣。於是後面,我就改變了一下面試技巧。給來的人,一人一臺電腦,要求寫出個死鎖程式,並且使用 jstack 分析出現問題的程式碼。時間不能超過 1 個半小時。
問題一出,有兩個程式設計師起身要走了,我問為什麼?回答:“寫不出來”。比較直接,於是我讓他們關注了公眾號,說明天公佈答案。並讓人事送他們到了電梯口。
接下來還有一些程式設計師,拿出手機偷偷的搜尋了,我也沒說什麼。只是結束時說等訊息。
只有其中一個老實的程式設計師很認真,最終寫的我很滿意。
並且在他的薪資要求上主動給他加了 1K,說多也不多。主要是以後,薪資漲幅不大,5% 到 10 % 的浮動。沒有像跳槽這樣來的快,給他一個超預期的起點,希望他能在我們公司多待幾年。
那麼如何寫出一個 Java 死鎖程式呢?程式碼很簡單,我已寫大家就看得明白。
程式碼很簡單,就是兩個執行緒分別獲取其中一個鎖,不釋放持有的鎖,然後再嘗試獲取另外一個鎖。
然後,我們通過 jps 和 jstack 8902 > jstack_deadlock.log 看一下相關資訊。
然後通過我在這篇文章中對執行緒狀態《執行緒面試必備:執行緒狀態和dump輸出狀態》的說明。我們看一下,死鎖 Deadlock 狀態。
從上面可以看出,Thread-0 鎖了 locked <0x0000000795b518a8 記憶體地址> (a java.lang.Object 鎖的物件)。然後,waiting to lock <0x0000000795b518b8> 等待鎖定另外一個記憶體地址,也就是物件。
而 Thread-1 鎖了 locked <0x0000000795b518b8 記憶體地址> (a java.lang.Object 鎖的物件)。然後,waiting to lock <0x0000000795b518a8> 等待鎖定另外一個記憶體地址,也就是物件。
而 jstack 也很明確的列出了相關執行緒的狀態 java.lang.Thread.State: BLOCKED (on object monitor)。
再看一下 jstack 列出的執行緒的堆疊資訊:
定位到相關的 Java 程式碼 DeadLockTest.java 第 24 行和 42 行。
最後,你們說這樣的程式設計師,我該不該給他主動上調入職薪資?
10T技術資源大放送!包括但不限於:C/C++,Linux,Python,Java,PHP,人工智慧,GO等等。在公眾號內回覆對應關鍵字或框架名字,即可免費獲取!!
你再主動一點點 我們就有故事了
相關文章
- ORACLE 死鎖分析過程Oracle
- 面試題分析:我的Twitter技術面試失敗了面試題
- 面試官:什麼是死鎖?怎麼排查死鎖?怎麼避免死鎖?面試
- 我的面試準備過程--leetcode樹面試LeetCode
- 前端掌握這一波面試題,面試加薪無憂無慮前端面試題
- 面試:什麼是死鎖,如何避免或解決死鎖;MySQL中的死鎖現象,MySQL死鎖如何解決面試MySql
- 死鎖問題排查過程-間隙鎖的復現以及解決
- 面試題總結: 類的載入過程面試題
- Java面試必問-死鎖終極篇Java面試
- MySQL 死鎖問題分析MySql
- Sqlserver分析死鎖問題SQLServer
- 線上死鎖問題分析
- 我的PHP面試題PHP面試題
- 面試題 SDWebImage內部實現過程面試題Web
- 面試題之死鎖解密面試題解密
- 寫給前端面試者前端面試
- MySQL鎖等待與死鎖問題分析MySql
- Oracle面試過程中常見的二十個問題Oracle面試
- 給自己出的iOS面試題iOS面試題
- 記2天面試的過程面試
- 理想的技術面試過程面試
- 我面試遇到的智力題面試
- 女生在求職面試過程中,如何巧妙回答面試官的尷尬問題求職面試
- 不是缺少人才,而是面試過程有問題面試
- 死鎖分析
- MySQL:一個死鎖分析 (未分析出來的死鎖)MySql
- ABAP面試題系列:寫一組會出現死鎖(Deadlock)的ABAP程式面試題
- 通過面試題,讓我們來了解Collection面試題
- 面試官:請用SQL模擬一個死鎖面試SQL
- 給機器學習面試者的十項建議機器學習面試
- 面試邀請和過程(華為賽門鐵克)面試
- 【面試普通人VS高手系列】死鎖的發生原因和怎麼避免面試
- Java執行緒面試題(02) Java執行緒中如何避免死鎖Java執行緒面試題
- 寫給自己看的面試題整理面試題
- 創業公司操蛋的面試過程創業面試
- UI設計師的面試過程UI面試
- 我遇見的那些面試題面試題
- 面試官:說一下記憶體溢位排查過程和工具?我...面試記憶體溢位