Skip to content

Commit

Permalink
Merge pull request #160 from terasato/patch-3
Browse files Browse the repository at this point in the history
Re-translated the beggining.
  • Loading branch information
LisandroSu authored Oct 11, 2018
2 parents 5a14ff9 + 03caade commit 5dba1c8
Showing 1 changed file with 4 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,12 @@ ms.contentlocale: ja-JP
ms.lasthandoff: 09/25/2018
ms.locfileid: "47109983"
---
# <a name="when-to-use-a-thread-safe-collection"></a>スレッド セーフなコレクションを使用する状況
[!INCLUDE[net_v40_long](../../../../includes/net-v40-long-md.md)] は、マルチ スレッドの追加および削除の操作をサポートするために特別に設計されている、5 つの新しいコレクション型です。 スレッド セーフを確保するために、これらの新しい型では、さまざまな種類の効率的なロック同期機構とロック制御の不要な同期機構が使用されます。 同期を行うと、操作にオーバーヘッドが追加されます。 オーバーヘッドの量は、使用する同期の種類、実行する操作の種類、およびその他の要因 (コレクションに同時にアクセスしようとするスレッドの数など) によって異なります。
# <a name="when-to-use-a-thread-safe-collection"></a>スレッドセーフなコレクションを使用する状況
[!INCLUDE[net_v40_long](../../../../includes/net-v40-long-md.md)]では、マルチスレッドでの追加や削除をサポートするよう特別に設計された、5つの新しいコレクション型が導入されました。これらの新しい型では、スレッド セーフを確保するために、さまざまな種類の効率的なロックやロック制御不要の同期機構が用いられます。同期を行うと、操作にオーバーヘッドが加わります。どれほどのオーバーヘッドが加わるかは、同期や操作の種類、およびその他の要因 (コレクションに同時にアクセスしようとするスレッドの数など) によって異なります。

一部のシナリオでは、同期のオーバーヘッドがほとんどなく、外部ロックで保護されるスレッド セーフでない同等の型よりもマルチスレッド型の方が、パフォーマンスとスケーラビリティが大幅に向上することがあります。 その他のシナリオでは、オーバーヘッドが原因で、スレッド セーフな型のパフォーマンスとスケーラビリティが、外部からロックされるスレッド セーフでないバージョンの型と同等かそれ以下になることもあります
一部のシナリオでは、同期のオーバーヘッドがほとんどなく、外部ロックで保護される同等の非スレッドセーフ型よりもマルチスレッド型の方が、パフォーマンスとスケーラビリティが大幅に向上することがあります。 その他のシナリオでは、オーバーヘッドにより、スレッドセーフ型のパフォーマンスとスケーラビリティが、外部からロックされる非スレッドセーフ型と同等かそれ以下になることもあります

以下のセクションでは、スレッド セーフなコレクションと、読み取り操作および書き込み操作でユーザー指定のロックを使用するスレッド セーフでない同等のコレクションの使い分けに関する一般的なガイダンスを示します。 パフォーマンスはさまざまな要因に左右されるため、このガイダンスは特定の状況には沿っておらず、すべての状況で有効であるとは限りません。 パフォーマンスが重要な場合、使用するコレクション型を判断する最適な方法は、代表的なコンピューター構成および負荷に基づいてパフォーマンスを計測することです。 このドキュメントでは、次の用語が使用されています。
以下のセクションでは、スレッドセーフなコレクションと、読み取り操作および書き込み操作でユーザー指定のロックを使用する同等の非スレッドセーフ コレクションの使い分けに関する一般的なガイダンスを示します。パフォーマンスはさまざまな要因に左右されるため、このガイダンスは特定の状況には沿っておらず、すべての状況で有効であるとは限りません。 パフォーマンスが重要な場合、使用するコレクション型を判断する最適な方法は、代表的なコンピューター構成および負荷に基づいてパフォーマンスを計測することです。 このドキュメントでは、次の用語が使用されています。

*純粋プロデューサー/コンシューマー シナリオ*
任意のスレッドで、要素の追加または削除のいずれかが実行されますが、両方は実行されません。
Expand Down

0 comments on commit 5dba1c8

Please sign in to comment.