JavaTM Platform
Standard Ed. 6

java.util
클래스 ConcurrentModificationException

java.lang.Object 
  상위를 확장 java.lang.Throwable 
      상위를 확장 java.lang.Exception 
          상위를 확장 java.lang.RuntimeException 
              상위를 확장 java.util.ConcurrentModificationException
모든 구현된 인터페이스:
Serializable


public class ConcurrentModificationException
extends RuntimeException

이 예외는, 객체의 병행 변경을 검출한 메소드에 의해, 그러한 변경이 허가되어 있지 않은 경우에 throw 됩니다.  

예를 들어, 어느 thread가 Collection 로 반복 처리를 행하고 있는 동안에, 다른 thread가 그 Collection 를 변경하는 것은 일반적으로 허가되지 않습니다. 일반적으로, 그러한 환경에서는, 반복 처리의 결과는 보증되지 않습니다. 몇개의 반복자 (Iterator)의 구현 (JRE 가 제공하는 모든 일반적인 목적의 컬렉션의 구현의, 반복자의 구현을 포함한다)은, 그 동작이 검출되었을 경우에 이 예외를 throw 하는 것을 선택할 수 있습니다. 이 예외를 throw 하는 반복자는, 「fail-fast」반복자로 불립니다. 반복자는, 장래의 예측할 수 없는 시점에 있어 예측할 수 없는 동작이 발생하는 위험을 회피하기 위해서, 즉시 한편 솜씨 자주(잘) 예외를 throw 합니다.  

이 예외는, 객체가 「다른」thread에 의해 병행해 갱신되어 있지 않은 것을 반드시 가리키고 있는 것은 아닙니다. 단일의 thread가, 객체의 규약에 위반하는 일련의 메소드를 발행했을 경우, 객체는 이 예외를 throw 합니다. 예를 들어, fail-fast 반복자를 가지는 컬렉션의 반복 처리를 실시하면서, thread가 컬렉션을 직접 수정하는 경우, 반복자는 이 예외를 throw 합니다.

일반적으로, 비동기의 병행 변경이 있는 경우, 확실한 보증을 실시하는 것은 불가능해서, fail-fast의 동작을 보증할 수 없습니다. fail-fast오페레이션은 최선 노력 원칙에 근거해,ConcurrentModificationException 를 throw 합니다. 따라서, 정확을 기하기 위해서 이 예외에 의존하는 프로그램을 쓰는 것은 잘못입니다. ConcurrentModificationException 는, 버그를 검출하기 위해서 마셔 사용해 주세요.

도입된 버젼:
1.2
관련 항목:
Collection , Iterator , ListIterator , Vector , LinkedList , HashSet , Hashtable , TreeMap , AbstractList , 직렬화 된 형식

생성자 의 개요
ConcurrentModificationException ()
          상세 메세지를 지정하지 않고 ConcurrentModificationException 를 구축합니다.
ConcurrentModificationException (String  message)
          지정된 상세 메세지를 가지는 ConcurrentModificationException 를 구축합니다.
 
메소드의 개요
 
클래스 java.lang. Throwable 로부터 상속된 메소드
fillInStackTrace , getCause , getLocalizedMessage , getMessage , getStackTrace , initCause , printStackTrace , printStackTrace , printStackTrace , setStackTrace , toString
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , equals , finalize , getClass , hashCode , notify , notifyAll , wait , wait , wait
 

생성자 의 상세

ConcurrentModificationException

public ConcurrentModificationException()
상세 메세지를 지정하지 않고 ConcurrentModificationException 를 구축합니다.


ConcurrentModificationException

public ConcurrentModificationException(String  message)
지정된 상세 메세지를 가지는 ConcurrentModificationException 를 구축합니다.

파라미터:
message - 이 예외에 관련하는 상세 메세지

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.