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 vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.
Konstruktoren
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) |
Erstellt eine |
ConcurrentModificationException(String, Throwable) |
Erstellt eine neue Ausnahme mit der angegebenen Detailmeldung und Ursache. |
ConcurrentModificationException(Throwable) |
Erstellt eine neue Ausnahme mit der angegebenen Ursache und einer Detailmeldung von |
Felder
is_generated |
Diese Ausnahme kann durch Methoden ausgelöst werden, die gleichzeitige Änderungen eines Objekts erkannt haben, wenn diese Änderung nicht zulässig ist. (Geerbt von Throwable) |
Eigenschaften
Cause |
Gibt die Ursache dieses Auslösens zurück oder |
Class |
Diese Ausnahme kann durch Methoden ausgelöst werden, die gleichzeitige Änderungen eines Objekts erkannt haben, wenn diese Änderung nicht zulässig ist. (Geerbt von Throwable) |
Handle |
Das Handle für die zugrunde liegende Android-Instanz. (Geerbt von Throwable) |
JniIdentityHashCode |
Diese Ausnahme kann durch Methoden ausgelöst werden, die gleichzeitige Änderungen eines Objekts erkannt haben, wenn diese Änderung nicht zulässig ist. (Geerbt von Throwable) |
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 |
Diese Ausnahme kann durch Methoden ausgelöst werden, die gleichzeitige Änderungen eines Objekts erkannt haben, wenn diese Änderung nicht zulässig ist. (Geerbt von Throwable) |
StackTrace |
Diese Ausnahme kann durch Methoden ausgelöst werden, die gleichzeitige Änderungen eines Objekts erkannt haben, wenn diese Änderung nicht zulässig ist. (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
AddSuppressed(Throwable) |
Fügt die angegebene Ausnahme an die Ausnahmen an, die unterdrückt wurden, um diese Ausnahme zu übermitteln. (Geerbt von Throwable) |
Dispose() |
Diese Ausnahme kann durch Methoden ausgelöst werden, die gleichzeitige Änderungen eines Objekts erkannt haben, wenn diese Änderung nicht zulässig ist. (Geerbt von Throwable) |
Dispose(Boolean) |
Diese Ausnahme kann durch Methoden ausgelöst werden, die gleichzeitige Änderungen eines Objekts erkannt haben, wenn diese Änderung nicht zulässig ist. (Geerbt von Throwable) |
FillInStackTrace() |
Füllt die Ausführungsstapelablaufverfolgung aus. (Geerbt von Throwable) |
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) |
SetStackTrace(StackTraceElement[]) |
Legt die Stapelablaufverfolgungselemente fest, die von |
ToString() |
Diese Ausnahme kann durch Methoden ausgelöst werden, die gleichzeitige Änderungen eines Objekts erkannt haben, wenn diese Änderung nicht zulässig ist. (Geerbt von Throwable) |
UnregisterFromRuntime() |
Diese Ausnahme kann durch Methoden ausgelöst werden, die gleichzeitige Änderungen eines Objekts erkannt haben, wenn diese Änderung nicht zulässig ist. (Geerbt von Throwable) |
Explizite Schnittstellenimplementierungen
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 Throwable) |
IJavaPeerable.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 Throwable) |
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 Throwable) |
IJavaPeerable.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 Throwable) |
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 Throwable) |
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 Throwable) |
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 Throwable) |
Erweiterungsmethoden
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. |
GetJniTypeName(IJavaPeerable) |
Diese Ausnahme kann durch Methoden ausgelöst werden, die gleichzeitige Änderungen eines Objekts erkannt haben, wenn diese Änderung nicht zulässig ist. |