Freigeben über


ConcurrentModificationException Klasse

Definition

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
ConcurrentModificationException
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 mit der angegebenen Detailmeldung.

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 (cause==null ? null : cause.toString()) (die in der Regel die Klassen- und Detailmeldung enthält cause.

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 null wenn die Ursache nicht vorhanden oder unbekannt ist.

(Geerbt von Throwable)
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 #printStackTrace().

(Geerbt von Throwable)
GetSuppressed()

Gibt ein Array zurück, das alle Ausnahmen enthält, die normalerweise von der tryAnweisung "-with-resources" unterdrückt wurden, um diese Ausnahme zu liefern.

(Geerbt von Throwable)
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 #getStackTrace() und gedruckt von #printStackTrace() und verwandten Methoden zurückgegeben und gedruckt werden.

(Geerbt von Throwable)
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.

Gilt für: