JavaTM 2 Platform
Standard Ed. 5.0

java.util.concurrent.atomic
Ŭ·¡½º AtomicLongFieldUpdater<T>

java.lang.Object 
  »óÀ§¸¦ È®Àå java.util.concurrent.atomic.AtomicLongFieldUpdater<T>
ÇüÅ ÆĶó¹ÌÅÍ:
T - °»½Å °¡´ÉÇÑ Çʵ带 º¸°ü À¯ÁöÇÏ´Â °´Ã¼ÀÇ ÇüÅÂ

public abstract class AtomicLongFieldUpdater<T>
extends Object

ÁöÁ¤µÈ Ŭ·¡½ºÀÇ ÁöÁ¤µÈ volatile long ÇʵåÀÇ ¿øÀÚ °»½ÅÀÌ °¡´ÉÇÑ, ¸®Ç÷º¼Ç º£À̽ºÀÇ À¯Æ¿¸®Æ¼ÀÔ´Ï´Ù. ÀÌ Å¬·¡½º´Â µ¿ÀÏ ³ëµåÀÇ º¹¼ö Çʵ尡 µ¶¸³ÇØ ¿øÀÚ °»½ÅÀÇ ´ë»óÀÌ µÇ´Â ¿øÀÚ µ¥ÀÌÅÍ ±¸Á¶·Î »ç¿ëÇÏ´Â ¸ñÀûÀ¸·Î ¼³°èµÇ°í ÀÖ½À´Ï´Ù.

ÀÌ Å¬·¡½º³»ÀÇ compareAndSet ¸Þ¼­µåÀÇ º¸ÁõÀº ´Ù¸¥ ¿øÀÚ Å¬·¡½º³»ÀÇ ±×°Íº¸´Ù ¾àÇÑ °Í¿¡ À¯ÀÇÇØ ÁÖ¼¼¿ä. ÀÌ Å¬·¡½º´Â ÇʵåÀÇ »ç¿ë ¸ðµç °ÍÀÌ ¿øÀÚ ¾×¼¼½º¿¡ ÀûÀýÇÏ°í ÀÖ´Â °ÍÀ» º¸ÁõÇÒ ¼ö ¾ø±â ¶§¹®¿¡ compareAndSet ¹× set ¿Ü È£Ãâ¿¡ °üÇÑ º¸°í ¿øÀÚ¼º ¹× Èֹ߼º ½Ã¸àƽ½º¸¦ º¸ÁõÇÒ ¼ö ÀÖ½À´Ï´Ù.

µµÀÔµÈ ¹öÀü :
1.5

»ý¼ºÀÚ °³¿ä
protected AtomicLongFieldUpdater ()
          ¼­ºê Ŭ·¡½º¿¡ ÀÇÇØ »ç¿ëµÈ´Ù, ¾Æ¹«°Íµµ ½Ç½ÃÇÏÁö ¾Ê´Â protected constructor¡¡ ¡¡.
 
¸Þ¼­µå °³¿ä
 long addAndGet (T  obj, long delta)
          ÇöÀçÀÇ °ªÀ¸·Î ÁöÁ¤µÈ °ªÀ» ¿øÀÚÀûÀ¸·Î Ãß°¡ÇÕ´Ï´Ù.
abstract  boolean compareAndSet (T  obj, long expect, long update)
           ¡¸ÇöÀçÀÇ °ª == ¿¹»óµÇ´Â °ª¡¹ÀÎ °æ¿ì, ÀÌ Updater°¡ °ü¸®ÇÏ´Â ÁöÁ¤µÈ °´Ã¼ÀÇ Çʵ尪À» ¿øÀÚÀûÀ¸·Î ¼³Á¤ÇÕ´Ï´Ù.
 long decrementAndGet (T  obj)
          ÇöÀçÀÇ °ªÀ» 1 ¸¸ ¿øÀÚÀûÀ¸·Î °¨ ºÐ ÇÕ´Ï´Ù.
abstract  long get (T  obj)
          ÁöÁ¤µÈ °´Ã¼°¡ º¸°ü À¯ÁöÇÏ´Â Çʵ峻ÀÇ ÇöÀç°¡¸¦ ÃëµæÇÕ´Ï´Ù.
 long getAndAdd (T  obj, long delta)
          ÇöÀçÀÇ °ªÀ¸·Î ÁöÁ¤µÈ °ªÀ» ¿øÀÚÀûÀ¸·Î Ãß°¡ÇÕ´Ï´Ù.
 long getAndDecrement (T  obj)
          ÇöÀçÀÇ °ªÀ» 1 ¸¸ ¿øÀÚÀûÀ¸·Î °¨ ºÐ ÇÕ´Ï´Ù.
 long getAndIncrement (T  obj)
          ÇöÀçÀÇ °ªÀ» 1 ¸¸ ¿øÀÚÀûÀ¸·Î ÁõºÐ ÇÕ´Ï´Ù.
 long getAndSet (T  obj, long newValue)
          ÁöÁ¤µÈ °ªÀ¸·Î ¼³Á¤ÇØ, ÀÌÀüÀÇ °ªÀ» ¸®ÅÏÇÕ´Ï´Ù.
 long incrementAndGet (T  obj)
          ÇöÀçÀÇ °ªÀ» 1 ¸¸ ¿øÀÚÀûÀ¸·Î ÁõºÐ ÇÕ´Ï´Ù.
static
<U> AtomicLongFieldUpdater <U>
newUpdater (Class <U> tclass, String  fieldName)
          ÁöÁ¤µÈ Çʵ带 °¡Áö´Â °´Ã¼ÀÇ ¾÷ µ¥ÀÌÅ͸¦ ÀÛ¼ºÇÕ´Ï´Ù.
abstract  void set (T  obj, long newValue)
          ÀÌ ¾÷ µ¥ÀÌÅÍ¿¡ ÀÇÇØ °ü¸®µÇ´Â ÁöÁ¤µÈ °´Ã¼ÀÇ Çʵ带 ¼³Á¤ÇÕ´Ï´Ù.
abstract  boolean weakCompareAndSet (T  obj, long expect, long update)
           ¡¸ÇöÀçÀÇ °ª == ¿¹»óµÇ´Â °ª¡¹ÀÎ °æ¿ì, ÀÌ Updater°¡ °ü¸®ÇÏ´Â ÁöÁ¤µÈ °´Ã¼ÀÇ Çʵ尪À» ¿øÀÚÀûÀ¸·Î ¼³Á¤ÇÕ´Ï´Ù.
 
Ŭ·¡½º java.lang. Object ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼­µå
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

»ý¼ºÀÚ »ó¼¼

AtomicLongFieldUpdater

protected AtomicLongFieldUpdater()
¼­ºê Ŭ·¡½º¿¡ ÀÇÇØ »ç¿ëµÈ´Ù, ¾Æ¹«°Íµµ ½Ç½ÃÇÏÁö ¾Ê´Â protected constructor¡¡ ¡¡.

¸Þ¼­µåÀÇ »ó¼¼

newUpdater

public static <U> AtomicLongFieldUpdater <U> newUpdater(Class <U> tclass,
                                                       String  fieldName)
ÁöÁ¤µÈ Çʵ带 °¡Áö´Â °´Ã¼ÀÇ ¾÷ µ¥ÀÌÅ͸¦ ÀÛ¼ºÇÕ´Ï´Ù. Class Àμö´Â ¸®Ç÷ºÆ® Çü°ú ¹ü¿ëÇüÀÇ ÀÏÄ¡¸¦ üũÇϱâ À§Çؼ­ ÇÊ¿äÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
tclass - Çʵ带 º¸°ü À¯ÁöÇÏ´Â °´Ã¼ÀÇ Å¬·¡½º
fieldName - °»½ÅÇÏ´Â ÇʵåÀÇ À̸§
¹Ýȯ°ª:
¾÷ µ¥ÀÌÅÍ
¿¹¿Ü:
IllegalArgumentException - Çʵ尡 Èֹ߼ºÀÇ long ÇüÀÌ ¾Æ´Ñ °æ¿ì
RuntimeException - Ŭ·¡½º¿¡ Çʵ尡 Æ÷ÇÔµÇÁö ¾Ê´Â°¡ ÇüÅ°¡ ºÎÁ¤ÇÑ °æ¿ì¿¡ »óÀÚ·Î µÈ ¸®Ç÷º¼Ç º£À̽ºÀÇ ¿¹¿Ü°¡ Throw µÈ´Ù

compareAndSet

public abstract boolean compareAndSet(T  obj,
                                      long expect,
                                      long update)
¡¸ÇöÀçÀÇ °ª == ¿¹»óµÇ´Â °ª¡¹ÀÎ °æ¿ì, ÀÌ Updater°¡ °ü¸®ÇÏ´Â ÁöÁ¤µÈ °´Ã¼ÀÇ Çʵ尪À» ¿øÀÚÀûÀ¸·Î ¼³Á¤ÇÕ´Ï´Ù. ÀÌ ¸Þ¼­µå´Â compareAndSet ¹× set¿¡ ´ëÇÑ ´Ù¸¥ È£Ãâ·Î ¿øÀÚ¼ºÀ» °¡Áö´Â °ÍÀÌ º¸ÁõµÇ°í ÀÖ½À´Ï´Ù¸¸, Çʵ峻ÀÇ ´Ù¸¥ º¯°æ¿¡ °üÇؼ­´Â ¹Ýµå½Ã ±×·¸´Ù¶ó°í´Â ÇÑÁ¤ÇÏÁö ¾Ê½À´Ï´Ù.

ÆĶó¹ÌÅÍ:
obj - Á¶°ÇºÎ·Î Çʵ带 ¼³Á¤ÇÏ´Â °´Ã¼
expect - ¿¹»óµÇ´Â °ª
update - »õ·Î¿î °ª
¹Ýȯ°ª:
¼º°øÇßÀ» °æ¿ì´Â true
¿¹¿Ü:
ClassCastException - obj°¡ »ý¼ºÀÚ³»¿¡¼­ È®¸³µÈ Çʵ带 ó¸®Çϴ Ŭ·¡½ºÀÇ ÀνºÅϽº°¡ ¾Æ´Ñ °æ¿ì

weakCompareAndSet

public abstract boolean weakCompareAndSet(T  obj,
                                          long expect,
                                          long update)
¡¸ÇöÀçÀÇ °ª == ¿¹»óµÇ´Â °ª¡¹ÀÎ °æ¿ì, ÀÌ Updater°¡ °ü¸®ÇÏ´Â ÁöÁ¤µÈ °´Ã¼ÀÇ Çʵ尪À» ¿øÀÚÀûÀ¸·Î ¼³Á¤ÇÕ´Ï´Ù. ÀÌ ¸Þ¼­µå´Â compareAndSet ¹× set¿¡ ´ëÇÑ ´Ù¸¥ È£Ãâ·Î ¿øÀÚ¼ºÀ» °¡Áö´Â °ÍÀÌ º¸ÁõµÇ°í ÀÖ½À´Ï´Ù¸¸, Çʵ峻ÀÇ ´Ù¸¥ º¯°æ¿¡ °üÇؼ­´Â ¹Ýµå½Ã ±×·¸´Ù¶ó°í´Â ÇÑÁ¤ÇÏÁö ¾Ê½À´Ï´Ù. ÀÌ°ÍÀº ¿Ü°ü»ó ½ÇÆÐÇÏ´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù.

ÆĶó¹ÌÅÍ:
obj - Á¶°ÇºÎ·Î Çʵ带 ¼³Á¤ÇÏ´Â °´Ã¼
expect - ¿¹»óµÇ´Â °ª
update - »õ·Î¿î °ª
¹Ýȯ°ª:
¼º°øÇßÀ» °æ¿ì´Â true
¿¹¿Ü:
ClassCastException - obj°¡ »ý¼ºÀÚ³»¿¡¼­ È®¸³µÈ Çʵ带 ó¸®Çϴ Ŭ·¡½ºÀÇ ÀνºÅϽº°¡ ¾Æ´Ñ °æ¿ì

set

public abstract void set(T  obj,
                         long newValue)
ÀÌ ¾÷ µ¥ÀÌÅÍ¿¡ ÀÇÇØ °ü¸®µÇ´Â ÁöÁ¤µÈ °´Ã¼ÀÇ Çʵ带 ¼³Á¤ÇÕ´Ï´Ù. ÀÌ Á¶ÀÛÀº ÈļÓÀÇ compareAndSet È£Ãâ¿¡ °üÇؼ­´Â Èֹ߼º ½ºÅä¾î·Î¼­ µ¿ÀÛÇÏ´Â °ÍÀÌ º¸ÁõµÇ°í ÀÖ½À´Ï´Ù.

ÆĶó¹ÌÅÍ:
obj - Çʵ带 ¼³Á¤ÇÏ´Â °´Ã¼
newValue - »õ·Î¿î °ª

get

public abstract long get(T  obj)
ÁöÁ¤µÈ °´Ã¼°¡ º¸°ü À¯ÁöÇÏ´Â Çʵ峻ÀÇ ÇöÀç°¡¸¦ ÃëµæÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
obj - Çʵ带 ¾ò´Â °´Ã¼
¹Ýȯ°ª:
ÇöÀçÀÇ °ª

getAndSet

public long getAndSet(T  obj,
                      long newValue)
ÁöÁ¤µÈ °ªÀ¸·Î ¼³Á¤ÇØ, ÀÌÀüÀÇ °ªÀ» ¸®ÅÏÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
obj - Çʵ带 Ãëµæ ¹× ¼³Á¤ÇÏ´Â °´Ã¼
newValue - »õ·Î¿î °ª
¹Ýȯ°ª:
ÀüÀÇ°ª

getAndIncrement

public long getAndIncrement(T  obj)
ÇöÀçÀÇ °ªÀ» 1 ¸¸ ¿øÀÚÀûÀ¸·Î ÁõºÐ ÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
obj - Çʵ带 Ãëµæ ¹× ¼³Á¤ÇÏ´Â °´Ã¼
¹Ýȯ°ª:
ÀüÀÇ°ª

getAndDecrement

public long getAndDecrement(T  obj)
ÇöÀçÀÇ °ªÀ» 1 ¸¸ ¿øÀÚÀûÀ¸·Î °¨ ºÐ ÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
obj - Çʵ带 Ãëµæ ¹× ¼³Á¤ÇÏ´Â °´Ã¼
¹Ýȯ°ª:
ÀüÀÇ°ª

getAndAdd

public long getAndAdd(T  obj,
                      long delta)
ÇöÀçÀÇ °ªÀ¸·Î ÁöÁ¤µÈ °ªÀ» ¿øÀÚÀûÀ¸·Î Ãß°¡ÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
obj - Çʵ带 Ãëµæ ¹× ¼³Á¤ÇÏ´Â °´Ã¼
delta - Ãß°¡ÇÏ´Â °ª
¹Ýȯ°ª:
ÀüÀÇ°ª

incrementAndGet

public long incrementAndGet(T  obj)
ÇöÀçÀÇ °ªÀ» 1 ¸¸ ¿øÀÚÀûÀ¸·Î ÁõºÐ ÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
obj - Çʵ带 Ãëµæ ¹× ¼³Á¤ÇÏ´Â °´Ã¼
¹Ýȯ°ª:
°»½ÅµÈ °ª

decrementAndGet

public long decrementAndGet(T  obj)
ÇöÀçÀÇ °ªÀ» 1 ¸¸ ¿øÀÚÀûÀ¸·Î °¨ ºÐ ÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
obj - Çʵ带 Ãëµæ ¹× ¼³Á¤ÇÏ´Â °´Ã¼
¹Ýȯ°ª:
°»½ÅµÈ °ª

addAndGet

public long addAndGet(T  obj,
                      long delta)
ÇöÀçÀÇ °ªÀ¸·Î ÁöÁ¤µÈ °ªÀ» ¿øÀÚÀûÀ¸·Î Ãß°¡ÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
obj - Çʵ带 Ãëµæ ¹× ¼³Á¤ÇÏ´Â °´Ã¼
delta - Ãß°¡ÇÏ´Â °ª
¹Ýȯ°ª:
°»½ÅµÈ °ª

JavaTM 2 Platform
Standard Ed. 5.0

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy µµ ÂüÁ¶ÇϽʽÿÀ.