|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
ÀÌÀü Ŭ·¡½º ´ÙÀ½ Ŭ·¡½º | ÇÁ·¹ÀÓÀ¸·Î ÇÁ·¹ÀÓ ¾øÀÌ | |||||||||
°³¿ä: NESTED | Çʵå | constructor | ¸Þ¼µå | »ó¼¼: Çʵå | »ý¼ºÀÚ | ¸Þ¼µå |
java.lang.Objectjava.util.Timer
public class Timer
¹é±×¶ó¿îµå thread·Î Àå·¡ ½ÇÇàµÇ´Â ŽºÅ©¸¦ ½ºÄÉÁÙ ÇÏ´Â thread¸¦ À§ÇÑ ±â´ÉÀÔ´Ï´Ù. ŽºÅ©´Â 1ȸ ¸¸, ¶Ç´Â Á¤±âÀûÀ¸·Î ¹Ýº¹ÇØ ½ÇÇàµÇµµ·Ï ½ºÄÉÁÙ µË´Ï´Ù.
°¢ Timer °´Ã¼¿Í ´ëÀÀÇÏ´Â °ÍÀº ŸÀ̸ÓÀÇ Å½ºÅ©¸¦ ¸ðµÎ ¿¬¼ÓÇØ ½ÇÇàÇϱâ À§Çؼ »ç¿ëµÇ´Â ´ÜÀÏÀÇ ¹é±×¶ó¿îµå threadÀÔ´Ï´Ù. ŸÀÌ¸Ó Å½ºÅ©´Â ½Å¼ÓÈ÷ ½ÇÇàµÉ Çʿ䰡 ÀÖ½À´Ï´Ù. ŸÀÌ¸Ó Å½ºÅ©ÀÇ ¿Ï·á¿¡ ½Ã°£ÀÌ ³Ê¹« °É¸®¸é, ŸÀ̸ÓÀÇ Å½ºÅ© ½ÇÇà thread°¡ ¡¸Á¡À¯¡¹µË´Ï´Ù. À̰Ϳ¡ ÀÇÇØ ÈļÓÀÇ Å½ºÅ©ÀÇ ½ÇÇàÀÌ ´Ê¾î À§¹ÝÇÑ Å½ºÅ©ÀÇ ¿Ï·á½Ã (¿Ï·áÇßÀ» °æ¿ì)¿¡ ¿¬´Þ¾Æ ¡¸Á¤¸®Çϸ硹½ÇÇàµÇ°Ô µË´Ï´Ù.
Timer °´Ã¼ÀÇ ¸¶Áö¸· ¶óÀ̺ê ÂüÁ¶°¡ Á¾·áÇØ, ¹Ìó¸®ÀÇ Å½ºÅ©°¡ ¸ðµÎ ½ÇÇàµÇ¸é, ŸÀ̸ÓÀÇ Å½ºÅ© ½ÇÇà threadµµ µ¿½Ã¿¡ ¿Ï·áÇØ, °¡ºñÁö Ä÷ºÆ®µË´Ï´Ù. ´Ù¸¸, À̰Ϳ¡´Â ÇѾø°í ±ä ½Ã°£ÀÌ °É¸®´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù. µðÆúÆ®¿¡¼´Â ŽºÅ©ÀÇ ½ÇÇà thread´Â ¡¸demon thread¡¹·Î¼´Â ½ÇÇàµÇÁö ¾Ê±â ¶§¹®¿¡ ¾îÇø®ÄÉÀ̼ÇÀÌ Á¾·áÇÏÁö ¾Ê°Ô ÇÒ ¼ö ÀÖ½À´Ï´Ù. ŸÀ̸ÓÀÇ Å½ºÅ© ½ÇÇà thread¸¦ Áï½Ã ¿Ï·á½ÃŰ´Â °æ¿ì, È£ÃâÃøÀº ŸÀ̸ÓÀÇ cancel ¸Þ¼µå¸¦ È£ÃâÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.
stop ¸Þ¼µåÀÇ È£Ãâµî¿¡ ÀÇÇØ ŸÀ̸ÓÀÇ Å½ºÅ© ½ÇÇà thread°¡ ¿¹»ó¿ÜÀÇ ½Ã°£¿¡ Á¾·áÇßÀ» °æ¿ì, ŸÀ̸ÓÀÇ Å½ºÅ©¸¦ ½ºÄÉÁÙ ÇÏ·Á°í Çϸé, ŸÀ̸ÓÀÇ cancel ¸Þ¼µå°¡ ºÒ·Á °¬À» °æ¿ì¿Í °°°Ô, IllegalStateExceptionÀÌ ¹ß»ýÇÕ´Ï´Ù.
ÀÌ Å¬·¡½º´Â thread ¼¼ÀÌÇÁÀÔ´Ï´Ù. ¿ÜºÎÀÇ µ¿±âȸ¦ ½Ç½ÃÇÏÁö ¾Ê¾Æµµ, º¹¼öÀÇ thread·Î ´ÜÀÏÀÇ Timer °´Ã¼¸¦ °øÀ¯ÇÒ ¼ö ÀÖ½À´Ï´Ù.
ÀÌ Å¬·¡½º¿¡¼´Â ¸®¾óŸÀÓÀº º¸ÁõµÇÁö ¾Ê½À´Ï´Ù. Object.wait(long) ¸Þ¼µå¸¦ »ç¿ëÇØ, ŽºÅ©°¡ ½ºÄÉÁÙ µË´Ï´Ù.
±¸Çö»óÀÇ ÁÖÀÇ: ÀÌ Å¬·¡½º´Â µ¿½Ã¿¡ ½ºÄÉÁÙ µÈ ´Ù¼öÀÇ Å½ºÅ©¸¦ ½½Ä¶¸µ ÇÕ´Ï´Ù (¼öõ¿¡¼µµ ¹®Á¦´Â ¾ø´Ù). ŽºÅ© Å¥¸¦ ³ªÅ¸³»±â À§Çؼ ¹ÙÀ̳ʸ® heap°¡ ³»ºÎÀûÀ¸·Î »ç¿ëµÇ±â ¶§¹®¿¡ ŽºÅ©¸¦ ½ºÄÉÁÙ ÇÏ´Â ÄÚ½ºÆ®´Â O(log n)°¡ µË´Ï´Ù. n´Â µ¿½Ã¿¡ ½ºÄÉÁÙ µÈ ŽºÅ©ÀÇ ¼öÀÔ´Ï´Ù.
±¸Çö»óÀÇ ÁÖÀÇ: ¸ðµç »ý¼ºÀڴ ŸÀÌ¸Ó thread¸¦ °³½ÃÇÕ´Ï´Ù.
TimerTask
,
Object.wait(long)
»ý¼ºÀÚ °³¿ä | |
---|---|
Timer ()
»õ·Î¿î ŸÀ̸Ӹ¦ ÀÛ¼ºÇÕ´Ï´Ù. |
|
Timer (boolean isDaemon)
demon·Î¼ ½ÇÇàµÇµµ·Ï ÁöÁ¤ÇÒ ¼ö ÀÖ´Â °ü·Ã thread¸¦ °¡Áö´Â »õ·Î¿î ŸÀ̸Ӱ¡ ÀÛ¼ºµË´Ï´Ù. |
|
Timer (String name)
ÁöÁ¤µÈ À̸§ÀÇ °ü·ÃµÈ thread¸¦ °¡Áö´Â »õ·Î¿î ŸÀ̸Ӱ¡ ÀÛ¼ºµË´Ï´Ù. |
|
Timer (String name,
boolean isDaemon)
ÁöÁ¤µÈ À̸§ÀÇ °ü·ÃµÈ thread¸¦ °¡Áö´Â »õ·Î¿î ŸÀ̸Ӱ¡ ÀÛ¼ºµË´Ï´Ù. |
¸Þ¼µå °³¿ä | |
---|---|
void |
cancel ()
ÇöÀç ½ºÄÉÁÙ µÇ°í Àִ ŽºÅ©¸¦ ÆÄ±âÇØ, ÀÌ Å¸À̸Ӹ¦ Á¾·áÇÕ´Ï´Ù. |
int |
purge ()
»èÁ¦µÈ ¸ðµç ŽºÅ©¸¦, ÀÌ Å¸À̸ÓÀÇ Å½ºÅ© Å¥·ÎºÎÅÍ »èÁ¦ÇÕ´Ï´Ù. |
void |
schedule (TimerTask task,
Date time)
ÁöÁ¤ÇÑ ½Ã°£À¸·Î ÁöÁ¤ÇÑ Å½ºÅ©°¡ ½ÇÇàµÇµµ·Ï ½ºÄÉÁÙ ÇÕ´Ï´Ù. |
void |
schedule (TimerTask task,
Date firstTime,
long period)
ÁöÁ¤ÇÑ Å½ºÅ©°¡ ÁöÁ¤ÇÑ ½Ã°£¿¡ ½ÃÀÛµÇ¾î ¡¸°íÁ¤ Áö¿¬ ½ÇÇࡹÀ» ¹Ýº¹Çϵµ·Ï ½ºÄÉÁÙ ÇÕ´Ï´Ù. |
void |
schedule (TimerTask task,
long delay)
ÁöÁ¤ÇÑ Áö¿¬ÀÇ ÈÄ¿¡ ÁöÁ¤ÇÑ Å½ºÅ©°¡ ½ÇÇàµÇµµ·Ï ½ºÄÉÁÙ ÇÕ´Ï´Ù. |
void |
schedule (TimerTask task,
long delay,
long period)
ÁöÁ¤ÇÑ Å½ºÅ©°¡ ÁöÁ¤ÇÑ Áö¿¬ÀÇ ÈÄ¿¡ ½ÃÀÛµÇ¾î ¡¸°íÁ¤ Áö¿¬ ½ÇÇࡹÀ» ¹Ýº¹Çϵµ·Ï ½ºÄÉÁÙ ÇÕ´Ï´Ù. |
void |
scheduleAtFixedRate (TimerTask task,
Date firstTime,
long period)
ÁöÁ¤ÇÑ Å½ºÅ©°¡ ÁöÁ¤ÇÑ ½Ã°£¿¡ ½ÃÀÛµÇ¾î ¡¸°íÁ¤ ºóµµ ½ÇÇࡹÀ» ¹Ýº¹Çϵµ·Ï ½ºÄÉÁÙ ÇÕ´Ï´Ù. |
void |
scheduleAtFixedRate (TimerTask task,
long delay,
long period)
ÁöÁ¤ÇÑ Å½ºÅ©°¡ ÁöÁ¤ÇÑ Áö¿¬ÀÇ ÈÄ¿¡ ½ÃÀÛµÇ¾î ¡¸°íÁ¤ ºóµµ ½ÇÇࡹÀ» ¹Ýº¹Çϵµ·Ï ½ºÄÉÁÙ ÇÕ´Ï´Ù. |
Ŭ·¡½º java.lang. Object ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼µå |
---|
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
»ý¼ºÀÚ »ó¼¼ |
---|
public Timer()
Thread
,
cancel()
public Timer(boolean isDaemon)
isDaemon
- °ü·ÃµÈ thread°¡ demon·Î¼ ½ÇÇàµÇ´Â °æ¿ì´Â trueThread
,
cancel()
public Timer(String name)
name
- °ü·ÃµÈ threadÀÇ À̸§
NullPointerException
- À̸§ÀÌ nullÀÎ °æ¿ìThread.getName()
,
Thread.isDaemon()
public Timer(String name, boolean isDaemon)
name
- °ü·ÃµÈ threadÀÇ À̸§isDaemon
- °ü·ÃµÈ thread°¡ demon·Î¼ ½ÇÇàµÇ´Â °æ¿ì´Â true
NullPointerException
- À̸§ÀÌ nullÀÎ °æ¿ìThread.getName()
,
Thread.isDaemon()
¸Þ¼µåÀÇ »ó¼¼ |
---|
public void schedule(TimerTask task, long delay)
task
- ½ºÄÉÁÙ µÇ´Â ŽºÅ©delay
- ŽºÅ©°¡ ½ÇÇàµÇ±â ÀüÀÇ ¹Ð¸® ¼¼ÄÁµå ´ÜÀ§ÀÇ Áö¿¬
IllegalArgumentException
- delay°¡ À߸øµÈ °ª
ÀÇ °æ¿ì, ¶Ç´Â delay + System.currentTimeMillis()°¡ À߸øµÈ °ª
ÀÇ °æ¿ì
IllegalStateException
- ŽºÅ©°¡ À̹Ì
½ºÄÉÁÙ µÇ¾ú´ÂÁö »èÁ¦µÇ¾úÀ» °æ¿ì, ¶Ç´Â ŸÀ̸Ӱ¡ »èÁ¦µÇ¾úÀ» °æ¿ìpublic void schedule(TimerTask task, Date time)
task
- ½ºÄÉÁÙ µÇ´Â ŽºÅ©time
- ŽºÅ©°¡ ½ÇÇàµÇ´Â ½Ã°£
IllegalArgumentException
- time.getTime()°¡ À߸øµÈ °ª
ÀÇ °æ¿ì
IllegalStateException
- ŽºÅ©°¡ À̹Ì
½ºÄÉÁÙ µÇ¾ú´ÂÁö »èÁ¦µÇ¾úÀ» °æ¿ì, ŸÀ̸Ӱ¡ »èÁ¦µÇ¾úÀ» °æ¿ì, ¶Ç´Â ŸÀÌ¸Ó thread°¡ Á¾·áÇßÀ» °æ¿ìpublic void schedule(TimerTask task, long delay, long period)
°íÁ¤ Áö¿¬ ½ÇÇà¿¡¼´Â ÀüÀÇ ½ÇÇàÀÇ ½ÇÁ¦ÀÇ ½ÇÇà ½Ã°£À» ±âÁØÀ¸·ÎÀÇÇØ °¢°¢ÀÇ ½ÇÇàÀÌ ½ºÄÉÁÙ µË´Ï´Ù. ¾î¶°ÇÑ ÀÌÀ¯·Î½á ½ÇÇàÀÌ Áö¿¬ ÇßÀ» °æ¿ì (°¡ºñÁö Ä÷º¼Ç, ±× ¿ÜÀÇ ¹é±×¶ó¿îµå ÀÛ¾÷ µî), ±× ÈÄÀÇ ½ÇÇ൵ Áö¿¬ µË´Ï´Ù. ÃÖÁ¾ÀûÀ¸·Î ½ÇÇàÀÇ ºóµµ´Â º¸Åë, ÁöÁ¤ÇÑ ±â°£ÀÇ ´ëÀÀÇÏ´Â ºóµµº¸´Ù ¾à°£ ´Ê¾îÁý´Ï´Ù (±âº»ÀÌ µÇ´Â Object.wait(long)¸¦ ÁöÁöÇϰí ÀÖ´Â ½Ã½ºÅÛ Å¬·ÏÀÌ Á¤È®À̶ó°í ÇÏ´Â ÀüÁ¦·Î).
°íÁ¤ Áö¿¬ ½ÇÇàÀº ¡¸¿øÈ°ÇÔ¡¹À» ÇÊ¿ä·Î ÇÏ´Â ÀÛ¾÷ÀÇ ¹Ýº¹¿¡ ÀûÀýÇϰí ÀÖ½À´Ï´Ù. Áï, Àå½Ã°£ÀÇ ½ÇÇຸ´Ù ´Ü½Ã°£ÀÇ ½ÇÇàÀ¸·Î ºóµµÀÇ Á¤È®ÇÔÀ» À¯ÁöÇÒ Çʿ䰡 ÀÖ´Â ÀÛ¾÷¿¡ ÀûÀýÇϰí ÀÖ½À´Ï´Ù. À̰Ϳ¡´Â ÀÏÁ¤ÇÑ °£°ÝÀ¸·Î Ä¿¼¸¦ Á¡¸ê½ÃŰ´Â µî, ´ëºÎºÐÀÇ ¾Ö´Ï¸ÞÀÌ¼Ç Å½ºÅ©°¡ Æ÷ÇԵ˴ϴÙ. ¶Ç, ۰¡ ¹Ð¸®°í ÀÖ´Â µ¿¾ÈÀº ¹®ÀÚ¸¦ ÀÚµ¿ÀûÀ¸·Î ¹Ýº¹ÇÏ´Â µî, »ç¿ëÀÚ ÀÇ ÀԷ¿¡ ÀÀÇØ ÀÏÁ¤ÇÑ È°µ¿ÀÌ ½ÇÇàµÇ´Â ŽºÅ©µµ Æ÷ÇԵ˴ϴÙ.
task
- ½ºÄÉÁÙ µÇ´Â ŽºÅ©delay
- ŽºÅ©°¡ ½ÇÇàµÇ±â ÀüÀÇ ¹Ð¸® ¼¼ÄÁµå ´ÜÀ§ÀÇ Áö¿¬period
- ¿¬¼ÓÇϴ ŽºÅ© ½ÇÇàÀÇ ¹Ð¸® ¼¼ÄÁµå ´ÜÀ§ÀÇ ½Ã°£
IllegalArgumentException
- delay°¡ À߸øµÈ °ª
ÀÇ °æ¿ì, ¶Ç´Â delay + System.currentTimeMillis()°¡ À߸øµÈ °ª
ÀÇ °æ¿ì
IllegalStateException
- ŽºÅ©°¡ À̹Ì
½ºÄÉÁÙ µÇ¾ú´ÂÁö »èÁ¦µÇ¾úÀ» °æ¿ì, ŸÀ̸Ӱ¡ »èÁ¦µÇ¾úÀ» °æ¿ì, ¶Ç´Â ŸÀÌ¸Ó thread°¡ Á¾·áÇßÀ» °æ¿ìpublic void schedule(TimerTask task, Date firstTime, long period)
°íÁ¤ Áö¿¬ ½ÇÇà¿¡¼´Â ÀüÀÇ ½ÇÇàÀÇ ½ÇÁ¦ÀÇ ½ÇÇà ½Ã°£À» ±âÁØÀ¸·ÎÀÇÇØ °¢°¢ÀÇ ½ÇÇàÀÌ ½ºÄÉÁÙ µË´Ï´Ù. ¾î¶°ÇÑ ÀÌÀ¯·Î½á ½ÇÇàÀÌ Áö¿¬ ÇßÀ» °æ¿ì (°¡ºñÁö Ä÷º¼Ç, ±× ¿ÜÀÇ ¹é±×¶ó¿îµå ÀÛ¾÷ µî), ±× ÈÄÀÇ ½ÇÇ൵ Áö¿¬ µË´Ï´Ù. ÃÖÁ¾ÀûÀ¸·Î ½ÇÇàÀÇ ºóµµ´Â º¸Åë, ÁöÁ¤ÇÑ ±â°£ÀÇ ´ëÀÀÇÏ´Â ºóµµº¸´Ù ¾à°£ ´Ê¾îÁý´Ï´Ù (±âº»ÀÌ µÇ´Â Object.wait(long)¸¦ ÁöÁöÇϰí ÀÖ´Â ½Ã½ºÅÛ Å¬·ÏÀÌ Á¤È®À̶ó°í ÇÏ´Â ÀüÁ¦·Î).
°íÁ¤ Áö¿¬ ½ÇÇàÀº ¡¸¿øÈ°ÇÔ¡¹À» ÇÊ¿ä·Î ÇÏ´Â ÀÛ¾÷ÀÇ ¹Ýº¹¿¡ ÀûÀýÇϰí ÀÖ½À´Ï´Ù. Áï, Àå½Ã°£ÀÇ ½ÇÇຸ´Ù ´Ü½Ã°£ÀÇ ½ÇÇàÀ¸·Î ºóµµÀÇ Á¤È®ÇÔÀ» À¯ÁöÇÒ Çʿ䰡 ÀÖ´Â ÀÛ¾÷¿¡ ÀûÀýÇϰí ÀÖ½À´Ï´Ù. À̰Ϳ¡´Â ÀÏÁ¤ÇÑ °£°ÝÀ¸·Î Ä¿¼¸¦ Á¡¸ê½ÃŰ´Â µî, ´ëºÎºÐÀÇ ¾Ö´Ï¸ÞÀÌ¼Ç Å½ºÅ©°¡ Æ÷ÇԵ˴ϴÙ. ¶Ç, ۰¡ ¹Ð¸®°í ÀÖ´Â µ¿¾ÈÀº ¹®ÀÚ¸¦ ÀÚµ¿ÀûÀ¸·Î ¹Ýº¹ÇÏ´Â µî, »ç¿ëÀÚ ÀÇ ÀԷ¿¡ ÀÀÇØ ÀÏÁ¤ÇÑ È°µ¿ÀÌ ½ÇÇàµÇ´Â ŽºÅ©µµ Æ÷ÇԵ˴ϴÙ.
task
- ½ºÄÉÁÙ µÇ´Â ŽºÅ©firstTime
- ŽºÅ©°¡ ½ÇÇàµÇ´Â ÃÖÃÊÀÇ ½Ã°£period
- ¿¬¼ÓÇϴ ŽºÅ© ½ÇÇàÀÇ ¹Ð¸® ¼¼ÄÁµå ´ÜÀ§ÀÇ ½Ã°£
IllegalArgumentException
- time.getTime()°¡ À߸øµÈ °ª
ÀÇ °æ¿ì
IllegalStateException
- ŽºÅ©°¡ À̹Ì
½ºÄÉÁÙ µÇ¾ú´ÂÁö »èÁ¦µÇ¾úÀ» °æ¿ì, ŸÀ̸Ӱ¡ »èÁ¦µÇ¾úÀ» °æ¿ì, ¶Ç´Â ŸÀÌ¸Ó thread°¡ Á¾·áÇßÀ» °æ¿ìpublic void scheduleAtFixedRate(TimerTask task, long delay, long period)
°íÁ¤ ºóµµ ½ÇÇà¿¡¼´Â ÃÖÃÊÀÇ ½ÇÇàÀÇ ½ºÄÉÁÙ µÈ ½ÇÇà ½Ã°£À» ±âÁØÀ¸·ÎÀÇÇØ °¢°¢ÀÇ ½ÇÇàÀÌ ½ºÄÉÁÙ µË´Ï´Ù. ¾î¶°ÇÑ ÀÌÀ¯·Î½á ½ÇÇàÀÌ Áö¿¬ ÇßÀ» °æ¿ì (°¡ºñÁö Ä÷º¼Ç ¶Ç´Â ±× ¿ÜÀÇ ¹é±×¶ó¿îµå ÀÛ¾÷ µî), ¡¸Áö¿¬À» µÇã´Â´Ù¡¹À§ÇØ 2°³ ÀÌ»óÀÇ ½ÇÇàÀÌ ¿¬¼ÓÇØ ÇàÇØÁý´Ï´Ù. ÃÖÁ¾ÀûÀ¸·Î ½ÇÇàÀÇ ºóµµ´Â ÁöÁ¤ÇÑ ±â°£ÀÇ ´ëÀÀÇÏ´Â ºóµµ¿Í °°°Ô µË´Ï´Ù (±âº»ÀÌ µÇ´Â Object.wait(long)¸¦ ÁöÁöÇϰí ÀÖ´Â ½Ã½ºÅÛ Å¬·ÏÀÌ Á¤È®À̶ó°í ÇÏ´Â ÀüÁ¦·Î).
°íÁ¤ ºóµµ ½ÇÇàÀº 1 ½Ã°£ ¸¶´Ù¿¡ Â÷ÀÓÀ» ¿ï¸®°Å³ª ƯÁ¤ÀÇ ½Ã°£¿¡ ¸ÅÀÏ ½ºÄÉÁÙ µÈ º¸¼ö¸¦ ½ÇÇàÇÏ´Â µî, ¡¸Àý´ë¡¹½Ã°£À» ¹Ý¿µÇÏ´Â ÀÛ¾÷À» ¹Ýº¹Çϴµ¥ ÀûÇÕÇÕ´Ï´Ù. ¶Ç, 10 ÃÊ ¸¶´Ù »õ°ÜÁö´Â Ä«¿îÆ®´Ù¿î ŸÀÌ¸Ó µî, Á¤ÇØÁø ¼öÀÇ ½ÇÇàÀÇ ÇÕ°è ½Ã°£ÀÌ Áß¿äÇÑ ÀÛ¾÷À» ¹Ýº¹Çϴµ¥µµ ÀûÇÕÇÕ´Ï´Ù. °Ô´Ù°¡ °íÁ¤ ºóµµ ½ÇÇàÀº ¼·Î µ¿±âȸ¦ º¸°ü À¯ÁöÇÒ Çʿ䰡 ÀÖ´Â º¹¼öÀÇ ¹Ýº¹ ŸÀÌ¸Ó Å½ºÅ©¸¦ ½ºÄÉÁÙ Çϴµ¥µµ ÀûÇÕÇÕ´Ï´Ù.
task
- ½ºÄÉÁÙ µÇ´Â ŽºÅ©delay
- ŽºÅ©°¡ ½ÇÇàµÇ±â ÀüÀÇ ¹Ð¸® ¼¼ÄÁµå ´ÜÀ§ÀÇ Áö¿¬period
- ¿¬¼ÓÇϴ ŽºÅ© ½ÇÇàÀÇ ¹Ð¸® ¼¼ÄÁµå ´ÜÀ§ÀÇ ½Ã°£
IllegalArgumentException
- delay°¡ À߸øµÈ °ª
ÀÇ °æ¿ì, ¶Ç´Â delay + System.currentTimeMillis()°¡ À߸øµÈ °ª
ÀÇ °æ¿ì
IllegalStateException
- ŽºÅ©°¡ À̹Ì
½ºÄÉÁÙ µÇ¾ú´ÂÁö »èÁ¦µÇ¾úÀ» °æ¿ì, ŸÀ̸Ӱ¡ »èÁ¦µÇ¾úÀ» °æ¿ì, ¶Ç´Â ŸÀÌ¸Ó thread°¡ Á¾·áÇßÀ» °æ¿ìpublic void scheduleAtFixedRate(TimerTask task, Date firstTime, long period)
°íÁ¤ ºóµµ ½ÇÇà¿¡¼´Â ÃÖÃÊÀÇ ½ÇÇàÀÇ ½ºÄÉÁÙ µÈ ½ÇÇà ½Ã°£À» ±âÁØÀ¸·ÎÀÇÇØ °¢°¢ÀÇ ½ÇÇàÀÌ ½ºÄÉÁÙ µË´Ï´Ù. ¾î¶°ÇÑ ÀÌÀ¯·Î½á ½ÇÇàÀÌ Áö¿¬ ÇßÀ» °æ¿ì (°¡ºñÁö Ä÷º¼Ç ¶Ç´Â ±× ¿ÜÀÇ ¹é±×¶ó¿îµå ÀÛ¾÷ µî), ¡¸Áö¿¬À» µÇã´Â´Ù¡¹À§ÇØ 2°³ ÀÌ»óÀÇ ½ÇÇàÀÌ ¿¬¼ÓÇØ ÇàÇØÁý´Ï´Ù. ÃÖÁ¾ÀûÀ¸·Î ½ÇÇàÀÇ ºóµµ´Â ÁöÁ¤ÇÑ ±â°£ÀÇ ´ëÀÀÇÏ´Â ºóµµ¿Í °°°Ô µË´Ï´Ù (±âº»ÀÌ µÇ´Â Object.wait(long)¸¦ ÁöÁöÇϰí ÀÖ´Â ½Ã½ºÅÛ Å¬·ÏÀÌ Á¤È®À̶ó°í ÇÏ´Â ÀüÁ¦·Î).
°íÁ¤ ºóµµ ½ÇÇàÀº 1 ½Ã°£ ¸¶´Ù¿¡ Â÷ÀÓÀ» ¿ï¸®°Å³ª ƯÁ¤ÀÇ ½Ã°£¿¡ ¸ÅÀÏ ½ºÄÉÁÙ µÈ º¸¼ö¸¦ ½ÇÇàÇÏ´Â µî, ¡¸Àý´ë¡¹½Ã°£À» ¹Ý¿µÇÏ´Â ÀÛ¾÷À» ¹Ýº¹Çϴµ¥ ÀûÇÕÇÕ´Ï´Ù. ¶Ç, 10 ÃÊ ¸¶´Ù »õ°ÜÁö´Â Ä«¿îÆ®´Ù¿î ŸÀÌ¸Ó µî, Á¤ÇØÁø ¼öÀÇ ½ÇÇàÀÇ ÇÕ°è ½Ã°£ÀÌ Áß¿äÇÑ ÀÛ¾÷À» ¹Ýº¹Çϴµ¥µµ ÀûÇÕÇÕ´Ï´Ù. °Ô´Ù°¡ °íÁ¤ ºóµµ ½ÇÇàÀº ¼·Î µ¿±âȸ¦ º¸°ü À¯ÁöÇÒ Çʿ䰡 ÀÖ´Â º¹¼öÀÇ ¹Ýº¹ ŸÀÌ¸Ó Å½ºÅ©¸¦ ½ºÄÉÁÙ Çϴµ¥µµ ÀûÇÕÇÕ´Ï´Ù.
task
- ½ºÄÉÁÙ µÇ´Â ŽºÅ©firstTime
- ŽºÅ©°¡ ½ÇÇàµÇ´Â ÃÖÃÊÀÇ ½Ã°£period
- ¿¬¼ÓÇϴ ŽºÅ© ½ÇÇàÀÇ ¹Ð¸® ¼¼ÄÁµå ´ÜÀ§ÀÇ ½Ã°£
IllegalArgumentException
- time.getTime()°¡ À߸øµÈ °ª
ÀÇ °æ¿ì
IllegalStateException
- ŽºÅ©°¡ À̹Ì
½ºÄÉÁÙ µÇ¾ú´ÂÁö »èÁ¦µÇ¾úÀ» °æ¿ì, ŸÀ̸Ӱ¡ »èÁ¦µÇ¾úÀ» °æ¿ì, ¶Ç´Â ŸÀÌ¸Ó thread°¡ Á¾·áÇßÀ» °æ¿ìpublic void cancel()
ÀÌ Å¸À̸ӿ¡ ÀÇÇØ ºÒ·Á °£ ŸÀÌ¸Ó Å½ºÅ©ÀÇ ½ÇÇà ¸Þ¼µå·ÎºÎÅÍ ÀÌ ¸Þ¼µå¸¦ È£ÃâÇϸé, ÁøÇàÁßÀÇ Å½ºÅ© ½ÇÇàÀº ÀÌ Å¸À̸ӿ¡ ½ÇÇàµÇ´Â ¸¶Áö¸· ŽºÅ© ½ÇÇàÀÌ µË´Ï´Ù.
ÀÌ ¸Þ¼µå´Â ¹Ýº¹ÇØ È£ÃâÇÕ´Ï´Ù. 2¹øÂ° ÀÌÈÄÀÇ È£Ãâ¿¡´Â È¿°ú´Â ¾ø½À´Ï´Ù.
public int purge()
´ëºÎºÐÀÇ ÇÁ·Î±×·¥Àº ÀÌ ¸Þ¼µå¸¦ È£ÃâÇÒ ÇÊ¿ä´Â ¾ø½À´Ï´Ù. ÀÌ ¸Þ¼µå¸¦ »ç¿ëÇÏ´Â °ÍÀº ´Ù¼öÀÇ Å½ºÅ©¸¦ Ãë¼ÒÇÒ Çʿ䰡 ÀÖ´Â ¾îÇø®ÄÉÀ̼ÇÀ̸ç, ±×·¯ÇÑ ¾îÇø®ÄÉÀ̼ÇÀº Á»Ã³·³ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù. ÀÌ ¸Þ¼µå¸¦ È£ÃâÇϸé, ó¸® ½Ã°£ºÎÅÍ ¸Þ¸ð¸® È¿À²ÀÌ ¿ì¼±µÇ±â ¶§¹®¿¡ ¸Þ¼µåÀÇ ·±Å¸ÀÓÀÌ n + c log n¿¡ ºñ·ÊÇÏ´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù. ¿©±â¼, n´Â Å¥³»ÀÇ Å½ºÅ©ÀÇ ¼ö, c´Â »èÁ¦µÈ ŽºÅ©ÀÇ ¼ö¸¦ ³ªÅ¸³À´Ï´Ù.
ÀÌ Å¸À̸ӿ¡ ½ºÄÉÁÙ µÈ ŽºÅ©³»·ÎºÎÅÍ, ÀÌ ¸Þ¼µå¸¦ È£ÃâÇÒ ¼ö ÀÖ½À´Ï´Ù .
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
ÀÌÀü Ŭ·¡½º ´ÙÀ½ Ŭ·¡½º | ÇÁ·¹ÀÓÀ¸·Î ÇÁ·¹ÀÓ ¾øÀÌ | |||||||||
°³¿ä: NESTED | Çʵå | constructor | ¸Þ¼µå | »ó¼¼: Çʵå | »ý¼ºÀÚ | ¸Þ¼µå |
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy µµ ÂüÁ¶ÇϽʽÿÀ.