多執行緒設計模式

2022-09-06 05:27:08 字數 954 閱讀 7717

所謂「single threaded execution」,即「以乙個執行緒執行」,該模式用於設定限制,以確保同一時間內只讓乙個執行緒執行處理。

immutable模式中存在著確保例項狀態不發生改變的類(immutable類)。在訪問這些例項時並不需要執行耗時的互斥處理,因此若能巧妙利用該模式,定能提高程式效能。

如果執行現在的處理會造成問題,就讓執行處理的執行緒等待,通過讓執行緒等待來保證例項的安全性。

如果現在不合適執行這個操作,或者沒必要執行這個操作,就停止處理,直接返回。

producer:生成資料的執行緒

consumer:使用資料的執行緒

producer-consumer模式在生產者和消費者之間加入了乙個「橋梁角色」,該橋梁用於消除執行緒間處理速度的差異。

為每個命令或請求新分配乙個執行緒,由這個執行緒來執行處理。

在worker thread模式中,工人執行緒(work thread)會逐個取回工作並進行處理。當所有工作全部完成後,工人執行緒會等待新的工作到來。

future的意思是未來、**。假設有乙個方法需要花費很長時間才能獲取執行結果,那麼,與其一直等待結果,不如先拿一張「提貨單」。這裡的「提貨單」就稱為future角色,是「未來」可以轉化為實物的憑證。

開始 -> 操作中 -> 終止處理中 -> 終止

先從「操作中」狀態變為「終止處理中」的狀態,然後再真正地終止執行緒。

即使只有乙個入口,也會在內部為每個執行緒分配特有的儲存空間的模式。

在active object模式**場的主動物件可不僅僅「有自己特有的執行緒」。它同時還具有可以從外部接收和處理非同步訊息並根據需要返回處理結果的特徵。

active object模式中的主動物件會通過自己特有的執行緒在合適的時機處理從外部接收到的非同步訊息。

active object模式綜合來producer-consumer模式、thread-per message模式、future模式等各種模式,有時也被稱為actor模式。

多執行緒設計模式

呼叫類 public class main 介面 public inte ce data 包裝類 public class futureclient start return futuredata 真實資料處理類 public class realdata implements data catch...

多執行緒 多執行緒 單例設計模式

多執行緒之 單例設計模式 餓漢式 多執行緒安全 1 餓漢式 class single static single getinstance public void show class a implements runnable class test catch interruptedexceptio...

多執行緒 記憶體 設計模式

主要內容 1.記憶體使用 2.架構 一 風控伺服器多執行緒使用 執行緒池的使用 生產者 消費者模式 二 設計模式的使用 a 類工廠模式 factory b 模板模式 template c 策略模式 狀態模式 d 組合模式 三 多執行緒 記憶體使用 verify 1 在debug模式下,兩個巨集的功能...