day24總結 多執行緒和設計模式

2021-08-16 08:41:38 字數 975 閱讀 6910

①、jdk5以後的針對執行緒的鎖定操作和釋放操作

// 定義鎖物件

private lock lock = new reentrantlock();

// 加鎖

lock.lock();

// 釋放鎖

lock.unlock();

②、死鎖問題的描述和**體現

*死鎖:兩個或兩個以上的執行緒在爭奪資源的過程中,發生的一種相互等待的現象。
public void run() 

}} else

}} }

③、生產者和消費者多執行緒體現(執行緒間通訊問題)

// 基礎版本

// 改進版本1

// 改進版本2

// 最終版本3

a:最基本的版本,只有乙個資料。

b:改進版本,給出了不同的資料,並加入了同步機制

c:等待喚醒機制改進該程式,讓資料能夠實現依次的出現

wait()

notify()

notifyall() (多生產多消費)

d:等待喚醒機制的**優化。把資料及操作都寫在了資源類中

④執行緒組

⑤執行緒池

⑥多執行緒實現的第三種方案

⑦多執行緒的面試題

①面試物件的常見設計原則

單一開閉

黎克特制依賴注入

介面迪公尺特

②設計模式概述和分類

a:經驗的總結

b:三類

建立型結構型

行為型③改進的設計模式

a:簡單工廠模式

b:工廠方法模式

c:單例模式(掌握)

a:餓漢式

b:懶漢式

④runtime

jdk提供的乙個單例模式應用的類。

還可以呼叫dos命令。

執行緒狀態 Day24

執行緒狀態概述 timed waiting在api中的描述為 乙個正在限時等待另乙個執行緒執行乙個 喚醒 動作的執行緒處於這一狀態 在我們寫賣票的案例中,為了減少執行緒執行太快,現象不明顯等問題,我們在run方法中新增了sleep語句,這樣就 強制當前正在執行的執行緒休眠 暫停執行 以 減慢執行緒 ...

day24 學習總結

構造方法 date d new date string類和date類的轉換,通過dateformat類來實現轉換 dateformat為抽象類,需要通過其具體的子類來建立物件 dateformat類 構造方法 public dateformat 無參構造 public dateformat stri...

day24 繼承 封裝和多型

一 繼承 如果乙個類別繼承自另乙個類,那麼就形成了子類與父類。繼承使得子類具有父類的各種屬性和方法,而不需要再次編寫相同的 在子類繼承父類的同時,可以重新定義某些屬性和方法。作用 1 增加了類的耦合性 相關性 2 減少了重複 3 使得 更加規範化,合理化 分類 單繼承 繼承乙個類 多繼承 子類繼承自...