ConcurrentModificationException Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan.
[Android.Runtime.Register("java/util/ConcurrentModificationException", DoNotGenerateAcw=true)]
public class ConcurrentModificationException : Java.Lang.RuntimeException
[<Android.Runtime.Register("java/util/ConcurrentModificationException", DoNotGenerateAcw=true)>]
type ConcurrentModificationException = class
inherit RuntimeException
- Warisan
- Turunan
- Atribut
Keterangan
Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan.
Misalnya, umumnya tidak diizinkan untuk satu utas untuk memodifikasi Koleksi sementara utas lain berulang di atasnya. Secara umum, hasil iterasi tidak terdefinisi dalam keadaan ini. Beberapa implementasi Iterator (termasuk semua implementasi pengumpulan tujuan umum yang disediakan oleh JRE) dapat memilih untuk melemparkan pengecualian ini jika perilaku ini terdeteksi. Iterator yang melakukan ini dikenal sebagai iterator fail-fast , karena gagal dengan cepat dan bersih, melainkan berisiko perilaku non-deterministik yang beresiko pada waktu yang tidak ditentukan di masa depan.
Perhatikan bahwa pengecualian ini tidak selalu menunjukkan bahwa objek telah dimodifikasi secara bersamaan oleh utas yang berbeda . Jika satu utas mengeluarkan urutan pemanggilan metode yang melanggar kontrak objek, objek dapat melemparkan pengecualian ini. Misalnya, jika utas memodifikasi koleksi secara langsung saat melakukan iterasi pada koleksi dengan iterator fail-fast, iterator akan melemparkan pengecualian ini.
Perhatikan bahwa perilaku gagal-cepat tidak dapat dijamin apa adanya, secara umum, tidak mungkin untuk membuat jaminan keras dengan adanya modifikasi bersamaan yang tidak disinkronkan. Operasi fail-fast melempar ConcurrentModificationException berdasarkan upaya terbaik. Oleh karena itu, akan salah untuk menulis program yang bergantung pada pengecualian ini untuk kebenarannya: ConcurrentModificationException harus digunakan hanya untuk mendeteksi bug.
Ditambahkan dalam 1.2.
Dokumentasi Java untuk java.util.ConcurrentModificationException.
Bagian halaman ini adalah modifikasi berdasarkan pekerjaan yang dibuat dan dibagikan oleh Proyek Sumber Terbuka Android dan digunakan sesuai dengan istilah yang dijelaskan dalam Lisensi Atribusi Creative Commons 2.5.
Konstruktor
| ConcurrentModificationException() |
Membuat ConcurrentModificationException tanpa pesan detail. |
| ConcurrentModificationException(IntPtr, JniHandleOwnership) |
Konstruktor yang digunakan saat membuat representasi terkelola objek JNI; dipanggil oleh runtime. |
| ConcurrentModificationException(String) |
Membuat |
| ConcurrentModificationException(String, Throwable) |
Membuat pengecualian baru dengan pesan dan penyebab detail yang ditentukan. |
| ConcurrentModificationException(Throwable) |
Membangun pengecualian baru dengan penyebab yang ditentukan dan pesan |
Bidang
| is_generated |
Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan. (Diperoleh dari Throwable) |
Properti
| Cause |
Mengembalikan penyebab ini dapat dilemparkan atau |
| Class |
Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan. (Diperoleh dari Throwable) |
| Handle |
Handel ke instans Android yang mendasar. (Diperoleh dari Throwable) |
| JniIdentityHashCode |
Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan. (Diperoleh dari Throwable) |
| JniPeerMembers |
Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan. |
| LocalizedMessage |
Membuat deskripsi yang dilokalkan dari yang dapat dilemparkan ini. (Diperoleh dari Throwable) |
| Message |
Mengembalikan string pesan detail dari yang dapat dilemparkan ini. (Diperoleh dari Throwable) |
| PeerReference |
Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan. (Diperoleh dari Throwable) |
| StackTrace |
Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan. (Diperoleh dari Throwable) |
| ThresholdClass |
API ini mendukung infrastruktur Mono untuk Android dan tidak dimaksudkan untuk digunakan langsung dari kode Anda. |
| ThresholdType |
API ini mendukung infrastruktur Mono untuk Android dan tidak dimaksudkan untuk digunakan langsung dari kode Anda. |
Metode
| AddSuppressed(Throwable) |
Menambahkan pengecualian yang ditentukan ke pengecualian yang ditekan untuk memberikan pengecualian ini. (Diperoleh dari Throwable) |
| Dispose() |
Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan. (Diperoleh dari Throwable) |
| Dispose(Boolean) |
Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan. (Diperoleh dari Throwable) |
| FillInStackTrace() |
Mengisi jejak tumpukan eksekusi. (Diperoleh dari Throwable) |
| GetStackTrace() |
Menyediakan akses terprogram ke informasi pelacakan tumpukan yang dicetak oleh |
| GetSuppressed() |
Mengembalikan array yang berisi semua pengecualian yang ditekan, biasanya oleh |
| InitCause(Throwable) |
Menginisialisasi penyebab ini dapat dilemparkan ke nilai yang ditentukan. (Diperoleh dari Throwable) |
| PrintStackTrace() |
Mencetak ini dapat dilemparkan dan lacak baliknya ke aliran kesalahan standar. (Diperoleh dari Throwable) |
| PrintStackTrace(PrintStream) |
Mencetak ini dapat dilemparkan dan lacak baliknya ke aliran cetak yang ditentukan. (Diperoleh dari Throwable) |
| PrintStackTrace(PrintWriter) |
Mencetak yang dapat dilemparkan ini dan lacak baliknya ke penulis cetak yang ditentukan. (Diperoleh dari Throwable) |
| SetHandle(IntPtr, JniHandleOwnership) |
Handle Mengatur properti. (Diperoleh dari Throwable) |
| SetStackTrace(StackTraceElement[]) |
Mengatur elemen pelacakan tumpukan yang akan dikembalikan oleh |
| ToString() |
Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan. (Diperoleh dari Throwable) |
| UnregisterFromRuntime() |
Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan. (Diperoleh dari Throwable) |
Implementasi Antarmuka Eksplisit
| IJavaPeerable.Disposed() |
Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan. (Diperoleh dari Throwable) |
| IJavaPeerable.DisposeUnlessReferenced() |
Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan. (Diperoleh dari Throwable) |
| IJavaPeerable.Finalized() |
Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan. (Diperoleh dari Throwable) |
| IJavaPeerable.JniManagedPeerState |
Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan. (Diperoleh dari Throwable) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan. (Diperoleh dari Throwable) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan. (Diperoleh dari Throwable) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan. (Diperoleh dari Throwable) |
Metode Ekstensi
| JavaCast<TResult>(IJavaObject) |
Melakukan konversi jenis yang diperiksa runtime Bahasa Umum Android. |
| JavaCast<TResult>(IJavaObject) |
Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan. |
| GetJniTypeName(IJavaPeerable) |
Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan. |