Team LiB
Previous Section Next Section

AtomicIntegerjava.util.concurrent.atomic

Java 5.0serializable

This threadsafe class holds an int value. It extends java.lang.Number, but unlike the Integer class, it is mutable. Access the int value with the get( ) method and the various methods inherited from Number. You can set the value with the set( ) method or through various atomic methods. In addition to the basic compareAndSet( ) and weakCompareAndSet( ) methods, this class defines methods for atomic pre-increment, post-increment, pre-decrement and post-decrement operations as well as generalized addAndGet( ) and getAndAdd( ) methods. addAndGet( ) atomically adds the specified amount to the stored value and returns the new value. getAndAdd( ) atomically returns the current value and then adds the specified amount to it.

Figure 16-98. java.util.concurrent.atomic.AtomicInteger


public class AtomicInteger extends Number implements Serializable {
// Public Constructors
     public AtomicInteger( );  
     public AtomicInteger(int initialValue);  
// Public Instance Methods
     public final int addAndGet(int delta);  
     public final boolean compareAndSet(int expect, int update);  
     public final int decrementAndGet( );  
     public final int get( );  
     public final int getAndAdd(int delta);  
     public final int getAndDecrement( );                                 default:0
     public final int getAndIncrement( );                                 default:-1
     public final int getAndSet(int newValue);  
     public final int incrementAndGet( );  
     public final void set(int newValue);  
     public final boolean weakCompareAndSet(int expect, int update);  
// Public Methods Overriding Number
     public double doubleValue( );  
     public float floatValue( );  
     public int intValue( );  
     public long longValue( );  
// Public Methods Overriding Object
     public String toString( );  
}

    Team LiB
    Previous Section Next Section