Bagikan melalui


Point3DCollection.GetEnumerator Metode

Definisi

Mengembalikan enumerator yang dapat melakukan iterasi melalui koleksi.

public:
 System::Windows::Media::Media3D::Point3DCollection::Enumerator GetEnumerator();
public System.Windows.Media.Media3D.Point3DCollection.Enumerator GetEnumerator ();
member this.GetEnumerator : unit -> System.Windows.Media.Media3D.Point3DCollection.Enumerator
Public Function GetEnumerator () As Point3DCollection.Enumerator

Mengembalikan

Enumerator yang dapat melakukan iterasi melalui koleksi.

Keterangan

Enumerator hanya memungkinkan membaca data dalam koleksi. Enumerator tidak dapat digunakan untuk mengubah koleksi yang mendasar.

Awalnya, enumerator diposisikan sebelum item pertama dalam koleksi. Pada posisi ini, panggilan Current melemparkan pengecualian. Oleh karena itu, Anda harus memanggil MoveNext untuk memajukan enumerator ke item pertama koleksi sebelum membaca nilai Saat Ini.

Saat ini mengembalikan objek yang sama hingga MoveNext atau Reset dipanggil. MoveNext mengatur Saat Ini ke item berikutnya.

Setelah akhir koleksi dilewatkan, enumerator diposisikan setelah item terakhir dalam koleksi, dan memanggil MoveNext mengembalikan false. Jika panggilan terakhir ke MoveNext mengembalikan false, memanggil Current akan memberikan pengecualian. Untuk mengatur Saat Ini ke item pertama koleksi lagi, Anda dapat memanggil Reset diikuti oleh MoveNext.

Enumerator tetap valid selama koleksi tetap tidak berubah. Jika perubahan dilakukan pada koleksi, seperti menambahkan, memodifikasi, atau menghapus item, enumerator tidak dapat dipulihkan dan panggilan berikutnya ke MoveNext atau Reset melempar InvalidOperationException. Jika koleksi dimodifikasi antara MoveNext dan Current, Current akan mengembalikan item yang diatur, meskipun enumerator sudah tidak valid.

Enumerator tidak memiliki akses eksklusif ke koleksi; oleh karena itu, menghitung melalui koleksi secara intrinsik bukan prosedur aman utas. Bahkan ketika koleksi disinkronkan, utas lain masih dapat memodifikasi koleksi, yang menyebabkan enumerator melemparkan pengecualian. Untuk menjamin keamanan utas selama enumerasi, Anda dapat mengunci koleksi selama seluruh enumerasi atau menangkap pengecualian yang dihasilkan dari perubahan yang dibuat oleh utas lain.

Berlaku untuk