ConcurrentModificationException Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Diese Ausnahme kann durch Methoden ausgelöst werden, die gleichzeitige Änderungen eines Objekts erkannt haben, wenn diese Änderung nicht zulässig ist.
[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
- Vererbung
- Abgeleitet
- Attribute
Hinweise
Diese Ausnahme kann durch Methoden ausgelöst werden, die gleichzeitige Änderungen eines Objekts erkannt haben, wenn diese Änderung nicht zulässig ist.
Beispielsweise ist es in der Regel nicht zulässig, dass ein Thread eine Sammlung ändert, während ein anderer Thread darüber iteriert. Im Allgemeinen sind die Ergebnisse der Iteration unter diesen Umständen nicht definiert. Einige Iterator-Implementierungen (einschließlich derer aller allgemeinen Sammlungsimplementierungen, die von jrE bereitgestellt werden) können diese Ausnahme auslösen, wenn dieses Verhalten erkannt wird. Iteratoren, die dies tun, werden als Fail-fast-Iteratoren bezeichnet, da sie schnell und sauber fehlschlagen, anstatt ein beliebiges, nicht deterministisches Verhalten zu einem unbestimmten Zeitpunkt in der Zukunft zu riskieren.
Beachten Sie, dass diese Ausnahme nicht immer darauf hinweist, dass ein Objekt gleichzeitig von einem anderen Thread geändert wurde. Wenn ein einzelner Thread eine Abfolge von Methodenaufrufen ausgibt, die den Vertrag eines Objekts verletzen, löst das Objekt diese Ausnahme möglicherweise aus. Wenn z. B. ein Thread eine Auflistung direkt ändert, während sie die Auflistung mit einem failoverschnellen Iterator durchlaufen, löst der Iterator diese Ausnahme aus.
Beachten Sie, dass das fehlschnelle Verhalten nicht garantiert werden kann, da es im Allgemeinen unmöglich ist, im Vorhandensein einer nicht synchronisierten gleichzeitigen Änderung hart zu garantieren. Fehlerschnelle Vorgänge werden auf best-effort-Basis ausgelöst ConcurrentModificationException . Daher wäre es falsch, ein Programm zu schreiben, das von dieser Ausnahme für seine Richtigkeit abhängig ist: ConcurrentModificationException sollte nur verwendet werden, um Fehler zu erkennen.
In 1.2 hinzugefügt.
Java Dokumentation für java.util.ConcurrentModificationException.
Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.
Konstruktoren
| Name | Beschreibung |
|---|---|
| ConcurrentModificationException() |
Erstellt eine GleichzeitigeModificationException ohne Detailmeldung. |
| ConcurrentModificationException(IntPtr, JniHandleOwnership) |
Ein Konstruktor, der beim Erstellen verwalteter Darstellungen von JNI-Objekten verwendet wird; wird von der Laufzeit aufgerufen. |
| ConcurrentModificationException(String, Throwable) |
Erstellt eine neue Ausnahme mit der angegebenen Detailmeldung und Ursache. |
| ConcurrentModificationException(String) |
Erstellt eine |
| ConcurrentModificationException(Throwable) |
Erstellt eine neue Ausnahme mit der angegebenen Ursache und einer Detailmeldung von |
Felder
| Name | Beschreibung |
|---|---|
| is_generated |
Gibt an, ob diese Ausgelöste durch die Bindung generiert wurde. (Geerbt von Throwable) |
Eigenschaften
| Name | Beschreibung |
|---|---|
| Cause |
Gibt die Ursache dieses Auslösens zurück oder |
| Class |
Ruft die Laufzeitklasse dieses Auslösens ab. (Geerbt von Throwable) |
| Handle |
Das Handle für die zugrunde liegende Android-Instanz. (Geerbt von Throwable) |
| JavaStackTrace |
Diese Ausnahme kann durch Methoden ausgelöst werden, die gleichzeitige Änderungen eines Objekts erkannt haben, wenn diese Änderung nicht zulässig ist. (Geerbt von JavaException) |
| JniIdentityHashCode |
Ruft den Identitätshashcode ab, der diesem Java Peer von der Interop-Laufzeit zugewiesen ist. (Geerbt von Throwable) |
| JniManagedPeerState |
Diese Ausnahme kann durch Methoden ausgelöst werden, die gleichzeitige Änderungen eines Objekts erkannt haben, wenn diese Änderung nicht zulässig ist. (Geerbt von JavaException) |
| JniPeerMembers |
Diese Ausnahme kann durch Methoden ausgelöst werden, die gleichzeitige Änderungen eines Objekts erkannt haben, wenn diese Änderung nicht zulässig ist. |
| LocalizedMessage |
Erstellt eine lokalisierte Beschreibung dieses Auslösens. (Geerbt von Throwable) |
| Message |
Gibt die Detailmeldungszeichenfolge dieses auslösenden Werts zurück. (Geerbt von Throwable) |
| PeerReference |
Ruft den JNI-Objektverweis für diesen Java Peer ab. (Geerbt von Throwable) |
| StackTrace |
Ruft eine Zeichenfolgendarstellung der Stapelablaufverfolgung für diese auslösende Funktion ab. (Geerbt von Throwable) |
| ThresholdClass |
Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen. |
| ThresholdType |
Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen. |
Methoden
| Name | Beschreibung |
|---|---|
| AddSuppressed(Throwable) |
Fügt die angegebene Ausnahme an die Ausnahmen an, die unterdrückt wurden, um diese Ausnahme zu übermitteln. (Geerbt von Throwable) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Diese Ausnahme kann durch Methoden ausgelöst werden, die gleichzeitige Änderungen eines Objekts erkannt haben, wenn diese Änderung nicht zulässig ist. (Geerbt von JavaException) |
| Dispose() |
Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden. (Geerbt von Throwable) |
| Dispose(Boolean) |
Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden. (Geerbt von Throwable) |
| DisposeUnlessReferenced() |
Diese Ausnahme kann durch Methoden ausgelöst werden, die gleichzeitige Änderungen eines Objekts erkannt haben, wenn diese Änderung nicht zulässig ist. (Geerbt von JavaException) |
| Equals(Object) |
Diese Ausnahme kann durch Methoden ausgelöst werden, die gleichzeitige Änderungen eines Objekts erkannt haben, wenn diese Änderung nicht zulässig ist. (Geerbt von JavaException) |
| FillInStackTrace() |
Füllt die Ausführungsstapelablaufverfolgung aus. (Geerbt von Throwable) |
| GetHashCode() |
Gibt einen Hashcodewert für das Objekt zurück. (Geerbt von JavaException) |
| GetStackTrace() |
Bietet programmgesteuerten Zugriff auf die Stapelablaufverfolgungsinformationen, die von |
| GetSuppressed() |
Gibt ein Array zurück, das alle Ausnahmen enthält, die normalerweise von der |
| InitCause(Throwable) |
Initialisiert die Ursache dieses Auslösens für den angegebenen Wert. (Geerbt von Throwable) |
| PrintStackTrace() |
Druckt diesen Auslöser und seine Rückverfolgung auf den Standardfehlerdatenstrom. (Geerbt von Throwable) |
| PrintStackTrace(PrintStream) |
Druckt diesen throwable und dessen Rückverfolgung auf den angegebenen Druckdatenstrom. (Geerbt von Throwable) |
| PrintStackTrace(PrintWriter) |
Druckt diesen auswerfbaren Ausdruck und seinen Rückgriff auf den angegebenen Druckschreiber. (Geerbt von Throwable) |
| SetHandle(IntPtr, JniHandleOwnership) |
Legt die Handle-Eigenschaft fest. (Geerbt von Throwable) |
| SetJavaStackTrace(JniObjectReference) |
Diese Ausnahme kann durch Methoden ausgelöst werden, die gleichzeitige Änderungen eines Objekts erkannt haben, wenn diese Änderung nicht zulässig ist. (Geerbt von JavaException) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Diese Ausnahme kann durch Methoden ausgelöst werden, die gleichzeitige Änderungen eines Objekts erkannt haben, wenn diese Änderung nicht zulässig ist. (Geerbt von JavaException) |
| SetStackTrace(StackTraceElement[]) |
Legt die Stapelablaufverfolgungselemente fest, die von |
| ToString() |
Wandelt diesen Wert in eine Zeichenfolge um. (Geerbt von Throwable) |
| UnregisterFromRuntime() |
Hebt die Registrierung dieses Java Peers aus der Interop-Laufzeit auf. (Geerbt von Throwable) |
Explizite Schnittstellenimplementierungen
| Name | Beschreibung |
|---|---|
| IJavaPeerable.Disposed() |
Diese Ausnahme kann durch Methoden ausgelöst werden, die gleichzeitige Änderungen eines Objekts erkannt haben, wenn diese Änderung nicht zulässig ist. (Geerbt von JavaException) |
| IJavaPeerable.Finalized() |
Diese Ausnahme kann durch Methoden ausgelöst werden, die gleichzeitige Änderungen eines Objekts erkannt haben, wenn diese Änderung nicht zulässig ist. (Geerbt von JavaException) |
| IJavaPeerable.JniObjectReferenceControlBlock |
Diese Ausnahme kann durch Methoden ausgelöst werden, die gleichzeitige Änderungen eines Objekts erkannt haben, wenn diese Änderung nicht zulässig ist. (Geerbt von JavaException) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Diese Ausnahme kann durch Methoden ausgelöst werden, die gleichzeitige Änderungen eines Objekts erkannt haben, wenn diese Änderung nicht zulässig ist. (Geerbt von JavaException) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Diese Ausnahme kann durch Methoden ausgelöst werden, die gleichzeitige Änderungen eines Objekts erkannt haben, wenn diese Änderung nicht zulässig ist. (Geerbt von JavaException) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Diese Ausnahme kann durch Methoden ausgelöst werden, die gleichzeitige Änderungen eines Objekts erkannt haben, wenn diese Änderung nicht zulässig ist. (Geerbt von JavaException) |
Erweiterungsmethoden
| Name | Beschreibung |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Ruft den JNI-Namen des Typs der Instanz |
| JavaAs<TResult>(IJavaPeerable) |
Versuchen Sie, die Eingabe |
| JavaCast<TResult>(IJavaObject) |
Führt eine android-laufzeitgecheckte Typkonvertierung aus. |
| JavaCast<TResult>(IJavaObject) |
Diese Ausnahme kann durch Methoden ausgelöst werden, die gleichzeitige Änderungen eines Objekts erkannt haben, wenn diese Änderung nicht zulässig ist. |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Versuchen Sie, die Eingabe |