IDTSOutputCollection100.GetEnumerator 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
傳回可逐一查看 IDTSOutputCollection100 的列舉值。
public:
System::Collections::IEnumerator ^ GetEnumerator();
[System.Runtime.InteropServices.DispId(-4)]
public System.Collections.IEnumerator GetEnumerator ();
[<System.Runtime.InteropServices.DispId(-4)>]
abstract member GetEnumerator : unit -> System.Collections.IEnumerator
Public Function GetEnumerator () As IEnumerator
傳回
傳回用來反復查看集合的 IEnumerator。
實作
- 屬性
備註
枚舉器只允許讀取集合中的資料。 枚舉器不能用來修改基礎集合。
一開始,列舉程式位在集合中的第一個項目之前。 Reset 也會將列舉值帶回至這個位置。 在這個位置,呼叫會擲回 Current 例外狀況。 因此,在讀取 MoveNext 的值之前,必須呼叫 Current 以將列舉值前移至集合的第一個項目。
Current 會傳回相同的物件直到呼叫 MoveNext 或 Reset。 MoveNext 會將 Current 設定為下一個項目。
在超過集合的末端後,列舉值會放置在集合最後一個元素之後,並且呼叫 MoveNext 會傳回 false。 如果最後一次呼叫 MoveNext 傳回,則呼叫會擲回 false 例外狀況 Current 。 若要再次將 Current 設定為集合的第一個元素,您可以在呼叫 Reset 之後,接著呼叫 MoveNext。
只要集合維持不變,列舉值就仍維持有效。 如果對集合進行了變更,例如加入、修改或刪除元素,列舉值將無法回復地失效,且下一次呼叫或會擲回 MoveNext Reset InvalidOperationException 。 如果在和之間修改集合,則會傳回 MoveNext Current 它所 Current 設定的元素,即使列舉值已經無效。
列舉程式沒有集合的獨佔存取權,因此,列舉集合內容本質上並不是安全的執行緒程序。 即使集合經過同步化,其他的執行緒仍可修改該集合,使列舉值擲回例外狀況。 若要保證列舉過程的執行緒安全,您可以在整個列舉過程中鎖定集合,或攔截由其他執行緒的變更所造成的例外狀況。