ConcurrentModificationException Kelas

Definisi

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
ConcurrentModificationException
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

Nama Deskripsi
ConcurrentModificationException()

Membuat ConcurrentModificationException tanpa pesan detail.

ConcurrentModificationException(IntPtr, JniHandleOwnership)

Konstruktor yang digunakan saat membuat representasi terkelola objek JNI; dipanggil oleh runtime.

ConcurrentModificationException(String, Throwable)

Membuat pengecualian baru dengan pesan dan penyebab detail yang ditentukan.

ConcurrentModificationException(String)

Membuat ConcurrentModificationException dengan pesan detail yang ditentukan.

ConcurrentModificationException(Throwable)

Membangun pengecualian baru dengan penyebab yang ditentukan dan pesan (cause==null ? null : cause.toString()) detail (yang biasanya berisi kelas dan pesan detail .cause

Bidang

Nama Deskripsi
is_generated

Menunjukkan apakah dapat dilemparkan ini dihasilkan oleh pengikatan.

(Diperoleh dari Throwable)

Properti

Nama Deskripsi
Cause

Mengembalikan penyebab ini dapat dilemparkan atau null jika penyebabnya tidak ada atau tidak diketahui.

(Diperoleh dari Throwable)
Class

Mendapatkan kelas runtime ini dapat dilemparkan.

(Diperoleh dari Throwable)
Handle

Handel ke instans Android yang mendasar.

(Diperoleh dari Throwable)
JavaStackTrace

Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan.

(Diperoleh dari JavaException)
JniIdentityHashCode

Mendapatkan kode hash identitas yang ditetapkan ke Java peer ini oleh runtime interop.

(Diperoleh dari Throwable)
JniManagedPeerState

Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan.

(Diperoleh dari JavaException)
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

Mendapatkan referensi objek JNI untuk peer Java ini.

(Diperoleh dari Throwable)
StackTrace

Mendapatkan representasi string dari jejak tumpukan untuk yang dapat dilemparkan ini.

(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

Nama Deskripsi
AddSuppressed(Throwable)

Menambahkan pengecualian yang ditentukan ke pengecualian yang ditekan untuk memberikan pengecualian ini.

(Diperoleh dari Throwable)
Construct(JniObjectReference, JniObjectReferenceOptions)

Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan.

(Diperoleh dari JavaException)
Dispose()

Merilis sumber daya yang dipegang oleh rekan Java ini.

(Diperoleh dari Throwable)
Dispose(Boolean)

Merilis sumber daya yang dipegang oleh rekan Java ini.

(Diperoleh dari Throwable)
DisposeUnlessReferenced()

Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan.

(Diperoleh dari JavaException)
Equals(Object)

Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan.

(Diperoleh dari JavaException)
FillInStackTrace()

Mengisi jejak tumpukan eksekusi.

(Diperoleh dari Throwable)
GetHashCode()

Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan.

(Diperoleh dari JavaException)
GetStackTrace()

Menyediakan akses terprogram ke informasi pelacakan tumpukan yang dicetak oleh #printStackTrace().

(Diperoleh dari Throwable)
GetSuppressed()

Mengembalikan array yang berisi semua pengecualian yang ditekan, biasanya oleh trypernyataan -with-resources, untuk memberikan pengecualian ini.

(Diperoleh dari Throwable)
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)
SetJavaStackTrace(JniObjectReference)

Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan.

(Diperoleh dari JavaException)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan.

(Diperoleh dari JavaException)
SetStackTrace(StackTraceElement[])

Mengatur elemen pelacakan tumpukan yang akan dikembalikan oleh #getStackTrace() dan dicetak oleh #printStackTrace() dan metode terkait.

(Diperoleh dari Throwable)
ToString()

Mengonversi nilai ini menjadi string.

(Diperoleh dari Throwable)
UnregisterFromRuntime()

Membatalkan pendaftaran peer Java ini dari runtime interop.

(Diperoleh dari Throwable)

Implementasi Antarmuka Eksplisit

Nama Deskripsi
IJavaPeerable.Disposed()

Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan.

(Diperoleh dari JavaException)
IJavaPeerable.Finalized()

Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan.

(Diperoleh dari JavaException)
IJavaPeerable.JniObjectReferenceControlBlock

Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan.

(Diperoleh dari JavaException)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan.

(Diperoleh dari JavaException)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan.

(Diperoleh dari JavaException)
IJavaPeerable.SetPeerReference(JniObjectReference)

Pengecualian ini dapat dilemparkan oleh metode yang telah mendeteksi modifikasi bersamaan objek ketika modifikasi tersebut tidak diizinkan.

(Diperoleh dari JavaException)

Metode Ekstensi

Nama Deskripsi
GetJniTypeName(IJavaPeerable)

Mendapatkan nama JNI dari jenis instans self.

JavaAs<TResult>(IJavaPeerable)

Cobalah untuk memaksa self untuk mengetik TResult, memeriksa bahwa paksaan valid di sisi Java.

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.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Cobalah untuk memaksa self untuk mengetik TResult, memeriksa bahwa paksaan valid di sisi Java.

Berlaku untuk