同時実行ランタイム
C++ のヘルプの同時実行ランタイム信頼性が高く、スケーラブルで、応答性の高い並行アプリケーションを作成できます。このフレームワークでは抽象のレベルが引き上げられるので、同時実行に関連するインフラストラクチャの詳細を管理する必要はありません。また、アプリケーションのサービスの品質への要求を満たすスケジューリング ポリシーを指定するためにも使用できます。ために、これらのリソースを、同時実行ランタイムを使用します。
リファレンス ドキュメントについては、「参照 (同時実行ランタイム)」を参照してください。
ヒント |
---|
同時実行ランタイムは C++11 機能に大きく依存しますが、最新 C++ のスタイルが使用されます。詳細については、C++ へようこそ (Modern C++)を参照してください。 |
同時実行ランタイムの機能の選択
同時実行ランタイムが重要である理由とその主要機能について説明しています。 |
|
各自のアプリケーション要件に最も合った同時実行モデルを使用できるように、同時実行ランタイムと他の同時実行モデル (Windows スレッド プールや OpenMP など) の違いについて説明しています。 |
|
OpenMP と同時実行ランタイムと比較し、既存の OpenMP コードを同時実行ランタイムを使用するように移行する方法の例を示します。 |
|
並列ループ、タスク、および並列コンテナーを提供する PPL について説明します。 |
|
非同期エージェントを使用する方法について説明し、簡単に組み込むのデータ フローおよび推進メッセージは、アプリケーションに委ねます。 |
|
同時実行ランタイムを使用するようにデスクトップ アプリケーションのパフォーマンスを微調整できるタスク スケジューラについて説明します。 |
PPL のタスクの並列化
非同期コードを記述し、小さい部分に並列処理を分解するために役立つタスク グループとタスクを定義します。 |
|
同時実行ランタイムの機能の一部を行うためにまとめる方法を示します。 |
|
ワーカー スレッドへの MFC アプリケーションの UI スレッドによって実行される処理を実行する方法を示します。 |
|
PPL を処理するためのヒントとベスト プラクティスについて説明します。 |
PPL でのデータの並列化
parallel_for、parallel_for_each、parallel_invokeおよび他の並列アルゴリズムについて説明します。データの収集を含む データの並列化 問題を解決するには、並列アルゴリズムを使用します。 |
|
combinable のクラス、または concurrent_vector、concurrent_queue、concurrent_unordered_mapおよび他の並列コンテナーついて説明します。要素へのスレッド セーフなアクセスを提供するコンテナーを要求すると並列コンテナーと並列オブジェクトを使用します。 |
|
PPL を処理するためのヒントとベスト プラクティスについて説明します。 |
タスクと並列アルゴリズムをクリックします。
PPL でのキャンセル処理の役割について説明します。始まり、キャンセル要求に応答する方法を示します。 |
|
データ並列処理をキャンセル 2 とおりの方法を示します。 |
Windows ストア Apps
キーの一部を Windows ストア アプリケーションの非同期操作を生成するには、同時実行ランタイムを使用する場合に考慮する点について説明します。 |
|
HTTP GET 要求を送信 IXMLHTTPRequest2 と IXMLHTTPRequest2Callback のインターフェイスと PPL のタスクをまとめて方法を取得し、ポストします Windows ストア アプリケーションの Web サービスを要求を示します。 |
|
Windows 8のダウンロード可能コード例およびデモの apps が含まれます。C++ の例では UX の応答性を保つためにバックグラウンドでデータを操作する PPL のタスクなど、同時実行ランタイムの機能を使用します。 |
非同期エージェント ライブラリでプログラミングするデータ フロー
方法: さまざまなプロデューサー/コンシューマー パターンを実装する |
非同期エージェント、メッセージ ブロック、および同時実行ランタイムにデータ フローの操作を実行するためのレポート一部であるメッセージ パッシング関数を記述します。 |
基本的なエージェント ベースのアプリケーションを作成する方法を示します。 |
|
イメージ処理を実行する非同期メッセージ ブロックのネットワークを作成する方法を示します。 |
|
"食事する哲学者の問題"を同時実行ランタイムを使用してアプリケーションでデッドロックを防止する方法を示すために使用します。 |
|
優先順位に従って順序の受信メッセージそのカスタム メッセージ ブロックの型を作成する方法を示します。 |
|
エージェントを使用するためのヒントとベスト プラクティスについて説明します。 |
例外処理とデバッガー
同時実行ランタイムの例外を使用する方法について説明します。 |
|
アプリケーションを微調整し、同時実行ランタイムを最も効果的に使用できるようにする方法について説明しています。 |
パフォーマンスの調整
アプリケーションを微調整し、同時実行ランタイムを最も効果的に使用できるようにする方法について説明しています。 |
|
の操作方法を管理するスケジューラ インスタンスおよびスケジューラ ポリシーを示します。デスクトップ アプリケーションの場合、スケジューラ ポリシーは、特定の種類の作業負荷にと特定の規則を関連付けることができます。たとえば、昇格したスレッド優先順位で一部のタスクを実行するようにスケジューラ インスタンスを 1 つ作成し、他のタスクについては既定のスケジューラを使用して通常のスレッド優先順位で実行することができます。 |
|
スケジュール グループ、またはグループ、関連のタスクを同時に affinitize の使用方法を示します。たとえば、それらのタスクが同じプロセッサ ノードの実行の利点を活用すると、関連のタスク間の局所性の昇格を必要とする場合があります。 |
|
軽量タスクが作成するときに便利負荷の配分をキャンセルを要求しない方法、および同時実行ランタイムを使用する既存のコードを改変対しても使用した作業どのように使用されるかを説明します。 |
|
同時実行ランタイムによって管理されるスレッドの動作を制御する方法について説明します。 |
|
同時実行方式でメモリの割り当てと解放するために同時実行ランタイムに用意されているメモリ管理がついて説明します。 |
その他のリソース
Hilo (C++ および XAML を使用して Windows ストア apps) 単一のプログラミング パターンとツールヒント |
C++ を使用して Hilo の非同期操作 Windows ストア、アプリケーションと XAML の実装により、同時実行ランタイムを使用する方法について学習します。 |
同時実行ランタイムを示すサンプル アプリケーション、およびユーティリティを提供します。 |
|
Parallel Programming in Native Code (ネイティブ コードでの並列プログラミング) のブログ |
同時実行ランタイムでの並列プログラミングに関する詳細なブログ記事を別途紹介しています。 |
Parallel Computing in C++ and Native Code (C++ およびネイティブ コードでの並列コンピューティング) のフォーラム |
同時実行ランタイムに関するコミュニティ ディスカッションに参加できます。 |
.NET Framework に用意されている並列プログラミング モデルについて説明しています。 |