Pourquoi une exception de modification simultanée se produit-elle en Java ?

Table des matières:

Pourquoi une exception de modification simultanée se produit-elle en Java ?
Pourquoi une exception de modification simultanée se produit-elle en Java ?
Anonim

L'exception ConcurrentModificationException se produit quand un objet est tenté d'être modifié simultanément alors qu'il n'est pas autorisé. Cette exception survient généralement lorsque l'on travaille avec des classes Java Collection. Par exemple - Il n'est pas permis à un thread de modifier une collection lorsqu'un autre thread itère dessus.

Comment corriger une exception de modification simultanée ?

Nous pouvons également éviter l'exception de modification simultanée dans un environnement à un seul thread. Nous pouvons utiliser la méthode remove de Iterator pour supprimer l'objet de l'objet de collection sous-jacent. Mais dans ce cas, vous ne pouvez supprimer que le même objet et aucun autre objet de la liste.

Comment empêcher une exception de modification simultanée sur une carte ?

utiliser ConcurrentHashMap. continuez à utiliser HashMap simple, mais créez une nouvelle carte à chaque modification et changez de carte en arrière-plan (en synchronisant l'opération de commutation ou en utilisant AtomicReference)

Quelle méthode d'itérateur lance une exception de modification simultanée ?

Si nous invoquons une séquence de méthodes sur un objet qui viole son contrat, alors l'objet lève ConcurrentModificationException. Par exemple: si, lors de l'itération sur la collection, nous essayons directement de modifier cette collection, alors l'itérateur fail-fast iterator lèvera cette ConcurrentModificationException.

Quelle est l'exception de modification simultanée dans le débordement de pile Java ?

Si un seul thread émet une séquence d'invocations de méthode qui viole le contrat d'un objet, l'objet peut lancer cette exception. Par exemple, si un thread modifie une collection directement pendant qu'il itère sur la collection avec un itérateur rapide, l'itérateur lèvera cette exception.

Conseillé:

Articles intéressants
Un caillot de sang causerait-il des douleurs au genou ?
Lire la suite

Un caillot de sang causerait-il des douleurs au genou ?

Causes et facteurs de risque Partager sur Pinterest Un caillot de sang derrière le genou peut causer de la douleur, de l'enflure et des rougeurs. Parfois, il n'y a pas de cause évidente d'un caillot sanguin derrière le genou, mais divers facteurs peuvent augmenter le risque d'en développer un.

Est-ce que ça veut dire "dernier hourra" ?
Lire la suite

Est-ce que ça veut dire "dernier hourra" ?

Le dernier hurrah de quelqu'un est la dernière occasion à laquelle il fait quelque chose, surtout à la fin de sa carrière. Je n'ai même pas commencé à penser à arrêter, ou à avoir un dernier hourra, ou à laisser ma carrière se terminer. D'où vient le dernier terme Hourra ?

Was ist labrum glenoidale ?
Lire la suite

Was ist labrum glenoidale ?

Für die Stabilität des Schultergelenks wie auch die Schulterfunktion ist das Labrum glenoidale von wesentlicher Bedeutung. … Die Gelenkanteile mit dem dazugehörigen Labrum bzw. Labrumkapsel- und Sehnenkomplex wurden in 7 Sektoren eingeteilt und sowohl radiär als auch sagittal, makro- und mikroskopisch untersucht.