(一)パラレルプログラミングモードの紹介
3667 ワード
パラレルプログラミングモードの紹介パラレルプログラミングモードの紹介 Futureモード Master-workerモード Guard Suspension保護保留モード Immutable Object不変モード Two-phase Termination 2段階終了モード Producer-Consumer生産者-消費者モデル Active Objectアクティブオブジェクトモード Thread Poolスレッドプールモード Thread Specific Storageスレッド特有の記憶モード Thread Confinementシリアルスレッドクローズモード Pipelineラインパターン Half-syncHalf-async半同期半非同期モード
Futureモード
ロール#ロール#
さぎょう
Main
システムを起動し、Clientを呼び出して要求を出す.
Client
Dataオブジェクトを返し、FutureDataを返すことを理解し、ClientThreadスレッドアセンブリRealDataをオンにします.
Data
データを返すインタフェース;
FutureData
Futureデータは、構造は速いが、仮想的なデータであり、RealDataを組み立てる必要がある.
RealData
実際のデータは、構築が遅い.
Master-workerモード
ロール#ロール#
さぎょう
Worker
実際にタスクを処理するために使用されます.
Master
タスクの割り当てと最終結果の合成;
Main
プログラムを起動し、マスターを開くスケジュールを設定します.
Guard Suspension保護保留モード
ロール#ロール#
さぎょう
Request
クライアント要求を表す
RequestQueue
クライアント要求キューの保存
ClientThread
クライアントプロセス
ServerThread
サーバプロセス
Immutable Object不変モード
Two-phase Termination 2段階終了モード
Producer-Consumer生産者-消費者モデル
ロール#ロール#
さぎょう
生産者
ユーザー・リクエストの発行、ユーザー・タスクの抽出、メモリ・バッファのロードに使用
消費者
メモリバッファでのタスクの抽出と処理
メモリバッファ
生産者が提出したタスクまたはデータをキャッシュし、消費者が使用できるようにする
タスク#タスク#
生産者がメモリバッファにコミットするデータ構造
Main
生産者と消費者を使用するクライアント
Active Objectアクティブオブジェクトモード
Thread Poolモード
Thread Specific Storage(スレッド固有ストレージ)モード
Thread Confinement(シリアルスレッドクローズ)モード
Pipelineモード
Half-sync/Half-async(半同期/半非同期)モード
Futureモード
Future ,
, ( , ), , , 。 。
ロール#ロール#
さぎょう
Main
システムを起動し、Clientを呼び出して要求を出す.
Client
Dataオブジェクトを返し、FutureDataを返すことを理解し、ClientThreadスレッドアセンブリRealDataをオンにします.
Data
データを返すインタフェース;
FutureData
Futureデータは、構造は速いが、仮想的なデータであり、RealDataを組み立てる必要がある.
RealData
実際のデータは、構築が遅い.
Master-workerモード
:Master Work 。Master ,work 。 Worker , Master , Master , 。
Master-worker , , , 。
Master-Worker , Worker ,Master Worker , 。
ロール#ロール#
さぎょう
Worker
実際にタスクを処理するために使用されます.
Master
タスクの割り当てと最終結果の合成;
Main
プログラムを起動し、マスターを開くスケジュールを設定します.
Guard Suspension保護保留モード
Guarded Suspension , , 。 , , , 。
Guarded Suspension , , , , 。
ロール#ロール#
さぎょう
Request
クライアント要求を表す
RequestQueue
クライアント要求キューの保存
ClientThread
クライアントプロセス
ServerThread
サーバプロセス
Immutable Object不変モード
, , , , , , , 。
: , , , 。
: , 。 、 。
Two-phase Termination 2段階終了モード
, , 。 Java API 。 , 。 。
, , , 。 , , , “ ” 。
ImmutableObject , , , , ImmutableObject, 。
Producer-Consumer生産者-消費者モデル
- , , 。 。
ロール#ロール#
さぎょう
生産者
ユーザー・リクエストの発行、ユーザー・タスクの抽出、メモリ・バッファのロードに使用
消費者
メモリバッファでのタスクの抽出と処理
メモリバッファ
生産者が提出したタスクまたはデータをキャッシュし、消費者が使用できるようにする
タスク#タスク#
生産者がメモリバッファにコミットするデータ構造
Main
生産者と消費者を使用するクライアント
Active Objectアクティブオブジェクトモード
, , , 。
Thread Poolモード
, , CPU , , Java JVM 。 , , 。
Thread Specific Storage(スレッド固有ストレージ)モード
, 、 。 , 。
Thread Confinement(シリアルスレッドクローズ)モード
, 。
Pipelineモード
, ,
Half-sync/Half-async(半同期/半非同期)モード
, , , 。