Compartilhar via


ConcurrentModificationException Classe

Definição

Essa exceção pode ser lançada por métodos que detectaram modificação simultânea de um objeto quando tal modificação não é permitida.

[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
Herança
ConcurrentModificationException
Derivado
Atributos

Comentários

Essa exceção pode ser lançada por métodos que detectaram modificação simultânea de um objeto quando tal modificação não é permitida.

Por exemplo, geralmente não é permitido que um thread modifique uma coleção enquanto outro thread está iterando sobre ela. Em geral, os resultados da iteração são indefinidos nessas circunstâncias. Algumas implementações do Iterator (incluindo as de todas as implementações de coleção de propósito geral fornecidas pelo JRE) podem optar por lançar essa exceção se esse comportamento for detectado. Os iteradores que fazem isso são conhecidos como iteradores rápidos de falha, pois falham de forma rápida e limpa, em vez de arriscar um comportamento arbitrário e não determinista em um momento indeterminado no futuro.

Observe que essa exceção nem sempre indica que um objeto foi modificado simultaneamente por um thread diferente . Se um único thread emite uma sequência de invocações de método que viola o contrato de um objeto, o objeto pode lançar essa exceção. Por exemplo, se um thread modifica uma coleção diretamente enquanto ele está iterando sobre a coleção com um iterador rápido de falha, o iterador lançará essa exceção.

Observe que o comportamento de falha rápida não pode ser garantido, pois é, de modo geral, impossível fazer quaisquer garantias rígidas na presença de modificação simultânea não sincronizada. Operações rápidas de falhas lançadas ConcurrentModificationException com base no melhor esforço. Portanto, seria errado escrever um programa que dependesse dessa exceção para sua correção: ConcurrentModificationException deveria ser usado apenas para detectar bugs.

Adicionado em 1.2.

Documentação Java para java.util.ConcurrentModificationException.

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usado de acordo com os termos descritos na Creative Commons 2.5 Attribution License.

Construtores

ConcurrentModificationException()

Constrói um ConcurrentModificationException sem nenhuma mensagem detalhada.

ConcurrentModificationException(IntPtr, JniHandleOwnership)

Um construtor usado ao criar representações gerenciadas de objetos JNI; chamado pelo tempo de execução.

ConcurrentModificationException(String)

Constrói um ConcurrentModificationException com a mensagem de detalhe especificada.

ConcurrentModificationException(String, Throwable)

Constrói uma nova exceção com a mensagem e a causa de detalhes especificadas.

ConcurrentModificationException(Throwable)

Constrói uma nova exceção com a causa especificada e uma mensagem de detalhe de (cause==null ? null : cause.toString()) (que normalmente contém a classe e a mensagem de detalhes de cause.

Campos

is_generated

Essa exceção pode ser lançada por métodos que detectaram modificação simultânea de um objeto quando tal modificação não é permitida.

(Herdado de Throwable)

Propriedades

Cause

Retorna a causa desse lance ou null se a causa é inexistente ou desconhecida.

(Herdado de Throwable)
Class

Essa exceção pode ser lançada por métodos que detectaram modificação simultânea de um objeto quando tal modificação não é permitida.

(Herdado de Throwable)
Handle

O identificador para a instância subjacente do Android.

(Herdado de Throwable)
JniIdentityHashCode

Essa exceção pode ser lançada por métodos que detectaram modificação simultânea de um objeto quando tal modificação não é permitida.

(Herdado de Throwable)
JniPeerMembers

Essa exceção pode ser lançada por métodos que detectaram modificação simultânea de um objeto quando tal modificação não é permitida.

LocalizedMessage

Cria uma descrição localizada desse lance.

(Herdado de Throwable)
Message

Retorna a sequência de caracteres de mensagem de detalhe deste throwable.

(Herdado de Throwable)
PeerReference

Essa exceção pode ser lançada por métodos que detectaram modificação simultânea de um objeto quando tal modificação não é permitida.

(Herdado de Throwable)
StackTrace

Essa exceção pode ser lançada por métodos que detectaram modificação simultânea de um objeto quando tal modificação não é permitida.

(Herdado de Throwable)
ThresholdClass

Esta API suporta a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código.

ThresholdType

Esta API suporta a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código.

Métodos

AddSuppressed(Throwable)

Acrescenta a exceção especificada às exceções que foram suprimidas para entregar essa exceção.

(Herdado de Throwable)
Dispose()

Essa exceção pode ser lançada por métodos que detectaram modificação simultânea de um objeto quando tal modificação não é permitida.

(Herdado de Throwable)
Dispose(Boolean)

Essa exceção pode ser lançada por métodos que detectaram modificação simultânea de um objeto quando tal modificação não é permitida.

(Herdado de Throwable)
FillInStackTrace()

Preenche o rastreamento da pilha de execução.

(Herdado de Throwable)
GetStackTrace()

Fornece acesso programático às informações de rastreamento de pilha impressas pelo #printStackTrace().

(Herdado de Throwable)
GetSuppressed()

Retorna uma matriz que contém todas as exceções que foram suprimidas, normalmente pela tryinstrução -with-resources, a fim de entregar essa exceção.

(Herdado de Throwable)
InitCause(Throwable)

Inicializa a causa desse lance para o valor especificado.

(Herdado de Throwable)
PrintStackTrace()

Imprime esse retrospecto e seu backtrace para o fluxo de erro padrão.

(Herdado de Throwable)
PrintStackTrace(PrintStream)

Imprime esse retrospectável e seu backtrace para o fluxo de impressão especificado.

(Herdado de Throwable)
PrintStackTrace(PrintWriter)

Imprime este throwable e seu backtrace para o gravador de impressão especificado.

(Herdado de Throwable)
SetHandle(IntPtr, JniHandleOwnership)

Define a propriedade Handle.

(Herdado de Throwable)
SetStackTrace(StackTraceElement[])

Define os elementos de rastreamento de pilha que serão retornados e #getStackTrace() impressos por #printStackTrace() e métodos relacionados.

(Herdado de Throwable)
ToString()

Essa exceção pode ser lançada por métodos que detectaram modificação simultânea de um objeto quando tal modificação não é permitida.

(Herdado de Throwable)
UnregisterFromRuntime()

Essa exceção pode ser lançada por métodos que detectaram modificação simultânea de um objeto quando tal modificação não é permitida.

(Herdado de Throwable)

Implantações explícitas de interface

IJavaPeerable.Disposed()

Essa exceção pode ser lançada por métodos que detectaram modificação simultânea de um objeto quando tal modificação não é permitida.

(Herdado de Throwable)
IJavaPeerable.DisposeUnlessReferenced()

Essa exceção pode ser lançada por métodos que detectaram modificação simultânea de um objeto quando tal modificação não é permitida.

(Herdado de Throwable)
IJavaPeerable.Finalized()

Essa exceção pode ser lançada por métodos que detectaram modificação simultânea de um objeto quando tal modificação não é permitida.

(Herdado de Throwable)
IJavaPeerable.JniManagedPeerState

Essa exceção pode ser lançada por métodos que detectaram modificação simultânea de um objeto quando tal modificação não é permitida.

(Herdado de Throwable)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Essa exceção pode ser lançada por métodos que detectaram modificação simultânea de um objeto quando tal modificação não é permitida.

(Herdado de Throwable)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Essa exceção pode ser lançada por métodos que detectaram modificação simultânea de um objeto quando tal modificação não é permitida.

(Herdado de Throwable)
IJavaPeerable.SetPeerReference(JniObjectReference)

Essa exceção pode ser lançada por métodos que detectaram modificação simultânea de um objeto quando tal modificação não é permitida.

(Herdado de Throwable)

Métodos de Extensão

JavaCast<TResult>(IJavaObject)

Executa uma conversão de tipo verificada em tempo de execução do Android.

JavaCast<TResult>(IJavaObject)

Essa exceção pode ser lançada por métodos que detectaram modificação simultânea de um objeto quando tal modificação não é permitida.

GetJniTypeName(IJavaPeerable)

Essa exceção pode ser lançada por métodos que detectaram modificação simultânea de um objeto quando tal modificação não é permitida.

Aplica-se a