concurrentmodificationexception.java

来自「java源代码 请看看啊 提点宝贵的意见」· Java 代码 · 共 70 行

JAVA
70
字号
/* * @(#)ConcurrentModificationException.java	1.15 03/01/23 * * Copyright 2003 Sun Microsystems, Inc. All rights reserved. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. */package java.util;/** * This exception may be thrown by methods that have detected concurrent * modification of an object when such modification is not permissible. * <p> * For example, it is not generally permssible for one thread to modify a Collection * while another thread is iterating over it.  In general, the results of the * iteration are undefined under these circumstances.  Some Iterator * implementations (including those of all the collection implementations * provided by the JRE) may choose to throw this exception if this behavior is * detected.  Iterators that do this are known as <i>fail-fast</i> iterators, * as they fail quickly and cleanly, rather that risking arbitrary, * non-deterministic behavior at an undetermined time in the future. * <p> * Note that this exception does not always indicate that an object has * been concurrently modified by a <i>different</i> thread.  If a single * thread issues a sequence of method invocations that violates the * contract of an object, the object may throw this exception.  For * example, if a thread modifies a collection directly while it is * iterating over the collection with a fail-fast iterator, the iterator * will thow this exception. * * <p>Note that fail-fast behavior cannot be guaranteed as it is, generally * speaking, impossible to make any hard guarantees in the presence of * unsynchronized concurrent modification.  Fail-fast operations * throw <tt>ConcurrentModificationException</tt> on a best-effort basis.  * Therefore, it would be wrong to write a program that depended on this * exception for its correctness: <i><tt>ConcurrentModificationException</tt> * should be used only to detect bugs.</i> * * @author  Josh Bloch * @version 1.15, 01/23/03 * @see	    Collection * @see     Iterator * @see     ListIterator * @see	    Vector * @see	    LinkedList * @see	    HashSet * @see	    Hashtable * @see	    TreeMap * @see	    AbstractList * @since   1.2 */public class ConcurrentModificationException extends RuntimeException {    /**     * Constructs a ConcurrentModificationException with no     * detail message.     */    public ConcurrentModificationException() {    }    /**     * Constructs a <tt>ConcurrentModificationException</tt> with the     * specified detail message.     *     * @param message the detail message pertaining to this exception.     */    public ConcurrentModificationException(String message) {	super(message);    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?