JavaTM 2
Platform
Std. Ed. v1.4.0

java.util
クラス ConcurrentModificationException

java.lang.Object
  |
  +--java.lang.Throwable
        |
        +--java.lang.Exception
              |
              +--java.lang.RuntimeException
                    |
                    +--java.util.ConcurrentModificationException
すべての実装インタフェース:
Serializable

public class ConcurrentModificationException
extends RuntimeException

この例外は、オブジェクトの同時変更を検出したメソッドによって、そのような変更が許可されていない場合にスローされます。

たとえば、あるスレッドが Collection で繰り返し処理を行なっている間に、別のスレッドがその Collection を変更することは通常許可されません。通常、そのような環境では、繰り返し処理の結果は保証されません。いくつかの反復子 (Iterator) の実装 (JRE が提供するすべてのコレクションの実装の、反復子の実装を含む) は、その動作が検出された場合にこの例外をスローすることを選択できます。この例外をスローする反復子は、「フェイルファスト」反復子と呼ばれます。反復子は、将来の予測できない時点において予測できない動作が発生する危険を回避するために、直ちにかつ手際よく例外をスローします。

この例外は、オブジェクトが different スレッドによって同時に更新されていないことを必ずしも示しているわけではありません。単一のスレッドが、オブジェクトの規約に違反する一連のメソッドを発行した場合、オブジェクトはこの例外をスローします。たとえば、フェイルファスト反復子を持つコレクションの繰り返し処理を行いながら、スレッドがコレクションを直接修正する場合、反復子はこの例外をスローします。

通常、非同期の同時変更がある場合、確かな保証を行うことは不可能なので、フェイルファストの動作を保証することはできません。フェイルファストオペレーションは最善努力原則に基づき、ConcurrentModificationException をスローします。したがって、正確を期すためにこの例外に依存するプログラムを書くことは誤りです。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 2
Platform
Std. Ed. v1.4.0

バグの報告と機能のリクエスト
これ以外の API リファレンスおよび開発者用ドキュメントについては、 Java 2 SDK SE 開発者用ドキュメントを参照してください。 開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、 およびコード実例が含まれています。

Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.