プログラマは、7つの並行プログラミングモデルを知っている必要があります

1.スレッドロック
ねじロックモデルは、多くのよく知られた欠点を持っているが、それでも他のモデルのための技術的基礎は、多くの同時ソフトウェア開発のための最初の選択肢です。

2.関数型プログラミング

関数型プログラミングの重要性が高まっている理由の一つは、それは並行プログラミングおよび並列プログラミングのための良いサポートを提供することです。関数型プログラミングは、それが基本的なスレッドセーフ、および並列に実行することは容易である、変数の状態を排除します。

 

3.Clojureロード - 分離および同定状態

Clojureのプログラミング言語は、命令型プログラミングと関数型プログラミングのミックスと一致するプログラム、両方の利点を活用するためのプログラミングの2種類で達成微妙なバランスです。

 

4.actor

俳優・モデルは、また、問題地理的分布の種類を解決するのに適した共有メモリと分散メモリモデルモデルの並行プログラミングモデルの非常に広い用途で強力なフォールトトレランスを提供することができます。

 

通信シーケンシャルプロセス(CSP、一連の処理を伝えます)

表面に、CSPのモデルは、両方のメッセージパッシングに基づいて、アクター・モデルと非常に類似しています。しかしながらCSPモデルは、送達チャネル情報に焦点を当て、そしてアクターモデルエンティティは、異なるスタイルをCSPモデルコードを使用して、チャネルの両端に焦点を当てました。

 

6.データレベル並列

各ラップトップコンピュータは、スーパーコンピュータ--GPUに隠されました。データレベルの並列性だけでなく、高速画像処理を用いたGPUは、より広い領域のために使用することができます。あなたは要素解析、計算流体力学、または他のデジタル・コンピューティングのホストを有限にしたい場合は、GPUの性能が最良の選択となります。

 

7.Lambdaアーキテクチャ

ビッグデータ時代の到来は、平行と不可分である - 今、私たちはただTBレベルのデータを処理する能力を持っていることができるようになり、コンピューティングリソースを追加する必要があります。ラムダ・アーキテクチャは、ビッグデータに関するさまざまな問題を扱うことができるのMapReduceとストリーム処理アーキテクチャの機能を兼ね備えています。

注意:記事はネットワークから再生され、あなたは、これが参考に感じた場合、私は公共番の注目[歓迎JavaテクノロジZHAIを ]、新品の会議は、最初のユーザーに通知しています。

おすすめ

転載: www.cnblogs.com/lfs2640666960/p/11415731.html