BreakpointTargetEnumerator クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
BreakpointTargetEnumerator コレクションの BreakpointTargets を作成します。 このクラスは継承できません。
public ref class BreakpointTargetEnumerator sealed : Microsoft::SqlServer::Dts::Runtime::DtsEnumerator
public sealed class BreakpointTargetEnumerator : Microsoft.SqlServer.Dts.Runtime.DtsEnumerator
type BreakpointTargetEnumerator = class
inherit DtsEnumerator
Public NotInheritable Class BreakpointTargetEnumerator
Inherits DtsEnumerator
- 継承
注釈
列挙子は、コレクションのデータ読み取りのみを有効にします。 列挙子を使用して、基になるコレクションを変更することはできません。
最初、列挙子はコレクションの先頭の要素の前に位置付けられます。 Reset
メソッドは、この位置に列挙子を戻します。 この位置で Current プロパティを呼び出すと、例外がスローされます。 したがって、Current の値を読み取る前に、MoveNext
メソッドを呼び出して、列挙子をコレクションの先頭の要素に進めておく必要があります。
Current は、MoveNext
または Reset
が呼び出されるまでは同じオブジェクトを返します。 MoveNext
は、Current を次の要素に進めます。
列挙子は、コレクションの末尾を越えると、コレクションの最後の要素の後に位置付けられるので、MoveNext
を呼び出すと false
が返されます。 前回 MoveNext
を呼び出して false
が返された場合に、Current を呼び出すと例外がスローされます。 コレクションの先頭の要素に再び Current を設定するには、先に Reset
を呼び出してから MoveNext
を呼び出します。
列挙子は、コレクションが変更されない限り有効です。 要素の追加、変更、削除など、コレクションに変更が加えられた場合、列挙子は無効になり、回復不能になります。したがって、次の呼び出し MoveNext
または Reset
スローします InvalidOperationException
。 ただし、MoveNext
を呼び出してから Current を呼び出すまでの間にコレクションが変更された場合、列挙子は無効になっていても、Current は設定されている要素を返します。
列挙子はコレクションに排他アクセスできないため、コレクションの列挙処理はスレッドセーフなプロシージャではありません。 コレクションが同期されている場合でも、他のスレッドがコレクションを変更する場合があるため、列挙子が例外をスローする原因になります。 列挙処理を確実にスレッド セーフに行うには、列挙中にコレクションをロックするか、他のスレッドによって行われた変更によってスローされる例外をキャッチします。
プロパティ
Current |
コレクション内の現在の BreakpointTarget オブジェクトを取得します。 |
メソッド
MoveNext() |
列挙子をコレクションの次の要素に進めます。 (継承元 DtsEnumerator) |
Reset() |
列挙子を初期位置、つまりコレクションの最初の要素の前に設定します。 (継承元 DtsEnumerator) |