JavaTM Platform
Standard Ed. 6

java.util.concurrent.atomic
클래스 AtomicLong

java.lang.Object 
  상위를 확장 java.lang.Number 
      상위를 확장 java.util.concurrent.atomic.AtomicLong
모든 구현된 인터페이스:
Serializable


public class AtomicLong
extends Number
implements Serializable

원자적인 갱신이 가능한 long 치입니다. 원자 변수의 프로퍼티의 자세한 것은,java.util.concurrent.atomic 패키지 스펙을 참조해 주세요. AtomicLong 는, 원자 조작적으로 증분 되는 일련 번호등의 어플리케이션으로 사용됩니다. 이것을 Long 의 대체로서 사용할 수 없습니다. 다만, 이 클래스는 Number 를 확장해, 수치 베이스의 클래스를 처리하는 툴이나 유틸리티에 의한 단일적인 액세스를 허가합니다.

도입된 버젼:
1.5
관련 항목:
직렬화 된 형식

생성자 의 개요
AtomicLong ()
          초기치 0 을 사용해, 새로운 AtomicLong 를 작성합니다.
AtomicLong (long initialValue)
          지정된 초기 파라미터를 사용해, 새로운 AtomicLong 를 작성합니다.
 
메소드의 개요
 long addAndGet (long delta)
          지정된 값을 현재의 값에 원자적으로 추가합니다.
 boolean compareAndSet (long expect, long update)
           「현재의 값 == 예상되는 값」인 경우, 값이 지정된 갱신치에 원자적으로 설정합니다.
 long decrementAndGet ()
          현재의 값을 1 만 원자적으로 감 분 합니다.
 double doubleValue ()
          지정된 값을 double 형으로서 돌려줍니다.
 float floatValue ()
          지정된 수치를 float 형으로서 돌려줍니다.
 long get ()
          현재의 값을 가져옵니다.
 long getAndAdd (long delta)
          지정된 값을 현재의 값에 원자적으로 추가합니다.
 long getAndDecrement ()
          현재의 값을 1 만 원자적으로 감 분 합니다.
 long getAndIncrement ()
          현재의 값을 1 만 원자적으로 증분 합니다.
 long getAndSet (long newValue)
          지정된 값에 원자적으로 설정해, 이전의 값을 돌려줍니다.
 long incrementAndGet ()
          현재의 값을 1 만 원자적으로 증분 합니다.
 int intValue ()
          지정된 값을 int 형으로서 돌려줍니다.
 void lazySet (long newValue)
          지정된 값에 최종적으로 설정합니다.
 long longValue ()
          지정된 수치를 long 형으로서 돌려줍니다.
 void set (long newValue)
          지정된 값으로 설정합니다.
 String toString ()
          현재가의 캐릭터 라인 표기를 돌려줍니다.
 boolean weakCompareAndSet (long expect, long update)
           「현재의 값 == 예상되는 값」인 경우, 값이 지정된 갱신치에 원자적으로 설정합니다.
 
클래스 java.lang. Number 로부터 상속된 메소드
byteValue , shortValue
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , equals , finalize , getClass , hashCode , notify , notifyAll , wait , wait , wait
 

생성자 의 상세

AtomicLong

public AtomicLong(long initialValue)
지정된 초기 파라미터를 사용해, 새로운 AtomicLong 를 작성합니다.

파라미터:
initialValue - 초기치

AtomicLong

public AtomicLong()
초기치 0 을 사용해, 새로운 AtomicLong 를 작성합니다.

메소드의 상세

get

public final long get()
현재의 값을 가져옵니다.

반환값:
현재의 값

set

public final void set(long newValue)
지정된 값으로 설정합니다.

파라미터:
newValue - 새로운 값

lazySet

public final void lazySet(long newValue)
지정된 값에 최종적으로 설정합니다.

파라미터:
newValue - 새로운 값
도입된 버젼:
1.6

getAndSet

public final long getAndSet(long newValue)
지정된 값에 원자적으로 설정해, 이전의 값을 돌려줍니다.

파라미터:
newValue - 새로운 값
반환값:
전의값

compareAndSet

public final boolean compareAndSet(long expect,
                                   long update)
「현재의 값 == 예상되는 값」인 경우, 값이 지정된 갱신치에 원자적으로 설정합니다.

파라미터:
expect - 예상되는 값
update - 새로운 값
반환값:
성공하는 경우는 true. false 는, 실제의 값이 예상되는 값과 등가가 아닌 것을 나타낸다

weakCompareAndSet

public final boolean weakCompareAndSet(long expect,
                                       long update)
「현재의 값 == 예상되는 값」인 경우, 값이 지정된 갱신치에 원자적으로 설정합니다.

외관상 실패할 가능성이 있어, 순서부 보증을 제공하지 않기 때문에,compareAndSet 대신에 사용하는 것은 거의 없습니다.

파라미터:
expect - 예상되는 값
update - 새로운 값
반환값:
성공하는 경우는 true

getAndIncrement

public final long getAndIncrement()
현재의 값을 1 만 원자적으로 증분 합니다.

반환값:
전의값

getAndDecrement

public final long getAndDecrement()
현재의 값을 1 만 원자적으로 감 분 합니다.

반환값:
전의값

getAndAdd

public final long getAndAdd(long delta)
지정된 값을 현재의 값에 원자적으로 추가합니다.

파라미터:
delta - 추가하는 값
반환값:
전의값

incrementAndGet

public final long incrementAndGet()
현재의 값을 1 만 원자적으로 증분 합니다.

반환값:
갱신된 값

decrementAndGet

public final long decrementAndGet()
현재의 값을 1 만 원자적으로 감 분 합니다.

반환값:
갱신된 값

addAndGet

public final long addAndGet(long delta)
지정된 값을 현재의 값에 원자적으로 추가합니다.

파라미터:
delta - 추가하는 값
반환값:
갱신된 값

toString

public String  toString()
현재가의 캐릭터 라인 표기를 돌려줍니다.

오버라이드(override):
클래스 Object 내의 toString
반환값:
현재가의 캐릭터 라인 표기

intValue

public int intValue()
클래스 Number 의 기술:
지정된 값을 int 형으로서 돌려줍니다. 값을 말거나 절약하거나 하는 일도 있습니다.

정의:
클래스 Number 내의 intValue
반환값:
이 객체가 나타내는 수치를 int 형으로 변환한 값

longValue

public long longValue()
클래스 Number 의 기술:
지정된 수치를 long 형으로서 돌려줍니다. 값을 말거나 절약하거나 하는 일도 있습니다.

정의:
클래스 Number 내의 longValue
반환값:
이 객체가 나타내는 수치를 long 형으로 변환한 값

floatValue

public float floatValue()
클래스 Number 의 기술:
지정된 수치를 float 형으로서 돌려줍니다. 값을 마는 일도 있습니다.

정의:
클래스 Number 내의 floatValue
반환값:
이 객체가 나타내는 수치를 float 형으로 변환한 값

doubleValue

public double doubleValue()
클래스 Number 의 기술:
지정된 값을 double 형으로서 돌려줍니다. 값을 마는 일도 있습니다.

정의:
클래스 Number 내의 doubleValue
반환값:
이 객체가 나타내는 수치를 double 형으로 변환한 값

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 도 참조해 주세요.