面經 秋 春招技術崗面經 死鎖

2021-10-03 12:43:41 字數 845 閱讀 7906

死鎖是指兩個或兩個以上的執行緒在執行過程中,由於競爭資源或者由於彼此通訊而造成的一種阻塞的現象,若無外力作用,它們都將無法推進下去。 此時稱系統處於死鎖狀態或系統產生了死鎖,這些永遠在互相等待的程序稱為死鎖程序。

1、互斥條件:

程序在執行中對資源進行排他性使用,即乙個資源僅能被乙個程序使用,此時其他程序請求資源時,只能等待其釋放。

2、請求與保持條件:

某程序已經保持了乙個資源,但又請求另乙個資源,若該資源被其他程序占有,此時請求阻塞,且對已經占有的資源不釋放;

3、不可剝奪條件:

程序獲得的資源在未使用完時不可被搶占,只能在程序使用完時自己釋放;

4、迴圈等待條件:

發生死鎖時,必然存在這樣乙個迴圈,乙個程序p1等待p2占有的資源程序p2等待p3占有的資源…程序pn等待p1占有的資源。

1、預防死鎖:

事先預防策略,容易實現,通過實現設定限制,破壞產生死鎖的四個條件之一。(如對資源採用按序分配策略)

2、避免死鎖:

事先預防策略,在資源的動態分配過程中,用某些方法防止系統禁圖不安全狀態。常見的方法有銀行家演算法

3、檢測死鎖:

通過檢測機構等及時檢測出死鎖,採取適當措施,把程序從死鎖中解脫。

4、解除死鎖:

檢測出死鎖後,採取措施解決。比如剝奪資源,撤銷程序

騰訊秋招面經

1 負載均衡中的一致性雜湊如何使用的 2 伺服器的半同步半非同步怎麼使用的 主線程非同步監聽listenfd,當有客戶端連線的時候,將連線連線套接字發給工作執行緒,工作執行緒也是非同步處理,使用libevent將所有套接字監聽起來。所以是乙個高效的半同步半非同步 3 伺服器和客戶端通訊的步驟 4 資...

2018春招面經集合

一 路口 二面掛 一 一面20180309 http狀態碼及含義 http請求頭報文的結構 http和 的區別,在哪一層加密 js中的原型和原型鏈 js中prototype 和 proto 的區別js中函式呼叫的方法 說一下閉包,為什麼要用它,解決方法 jq中實現鏈式呼叫的方法 bootstrap實...

2023年春招面經

hr 面的問題我就不寫了,感覺只要好好答應該都沒啥問題。目錄1.自我介紹 2.map使用什麼實現的,hashmap和unordered map呢?3.給你n個匹配串和乙個文字串怎麼找出每個串出現了幾次,我說ac自動機,然後問了我ac自動機建樹過程 3.給你乙個陣列 100w個數 找乙個子段使得他的和...