|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
ÀÌÀü Ŭ·¡½º ´ÙÀ½ Ŭ·¡½º | ÇÁ·¹ÀÓÀ¸·Î ÇÁ·¹ÀÓ ¾øÀÌ | |||||||||
°³¿ä: NESTED | Çʵå | constructor | ¸Þ¼µå | »ó¼¼: Çʵå | »ý¼ºÀÚ | ¸Þ¼µå |
java.lang.Objectjava.awt.EventQueue
public class EventQueue
EventQueue
´Â
¾î´À Ç÷§ÆûÀ¸·Îµµ °øÅëÀÇ Å¬·¡½ºÀ̸ç, ±âº»ÀÌ µÇ´Â ÇǾî Ŭ·¡½º¿Í ½Å·ÚÇÒ ¼ö ÀÖ´Â ¾îÇø®ÄÉÀÌ¼Ç Å¬·¡½º·ÎºÎÅÍÀÇ À̺¥Æ®¸¦ Å¥¿¡ ³Ö½À´Ï´Ù.
Å¥·ÎºÎÅÍ À̺¥Æ®¸¦ ÃßÃâÇÏ´Â ºñµ¿±â À̺¥Æ®µð½ºÆÐÄ¡ µµ±¸
¸¦ ĸ½¶ÈÇØ, µð½ºÆÐÄ¡ µÇ´Â À̺¥Æ®¸¦ Àμö·Î¼ EventQueue
dispatchEvent(AWTEvent)
¸Þ¼µå¸¦ È£ÃâÇÏ´Â °ÍÀ¸·Î µð½ºÆÐÄ¡ ÇÕ´Ï´Ù. ½ÇÁ¦ÀÇ µ¿ÀÛÀº ±¸Çö¿¡ µû¶ó¼ ´Ù¸¨´Ï´Ù. À¯ÀÏÇÑ Á¦ÇÑÀº, ÀÌ Å¥ (EventQueue
¿¡ º¸³»Áø À̺¥Æ®´Â ÇÕü ÇÒ ¼ö ÀÖ´Ù)¿¡ ½ÇÁ¦·Î ³ÖÀ» ¼ö ÀÖ´ø À̺¥Æ®ÀÔ´Ï´Ù.
AWTEvent
A °¡ AWTEvent
B º¸´Ù Àü¿¡ EventQueue
Å¥¿¡ ³Ö¾îÁ³À» °æ¿ì, À̺¥Æ® B °¡ À̺¥Æ® A º¸´Ù Àü¿¡ µð½ºÆÐÄ¡ µÉ °ÍÀº ¾ø½À´Ï´Ù.
ºê¶ó¿ìÀú¿¡ µû¶ó¼´Â
ÄÚµå º£À̽º°¡ ´Ù¸¥ ¾ÖÇø´À» °³º°ÀÇ ÄÁÅØ½ºÆ®
¿¡ ºÐÇÒÇØ, ÀÌ·¯ÇÑ ÄÁÅØ½ºÆ®
À» µ¶¸³ÇØ Ãë±ÞÇÏ´Â °ÍÀÌ ÀÖ½À´Ï´Ù. ÀÌ °æ¿ì, °¢ ÄÁÅØ½ºÆ®
¸¶´Ù 1 °³ÀÇ EventQueue
°¡ Á¸ÀçÇÏ°Ô µË´Ï´Ù. ¸ðµç ¾ÖÇø´À» °°Àº ÄÁÅØ½ºÆ®
¿¡ µÎ¾î, 1 °³ÀÇ ±Û·Î¹ú EventQueue
·Î ¸ðµç ¾ÖÇø´À» µ¿ÀÛ½ÃŰ´Â ºê¶ó¿ìÀúµµ ÀÖ½À´Ï´Ù. ÀÌ µ¿ÀÛÀº ±¸Çö¿¡
°áÁ¤µË´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº ºê¶ó¿ìÀúÀÇ ¹®¼¸¦ ÂüÁ¶ÇϽʽÿÀ.
À̺¥Æ®µð½ºÆÐÄ¡ ±â´ÉÀÇ thread ¹®Á¦¿¡ ´ëÇØ¼´Â¡¸AWT Threading Issues¡¹¸¦ ÂüÁ¶ÇϽʽÿÀ.
»ý¼ºÀÚ °³¿ä | |
---|---|
EventQueue ()
|
¸Þ¼µå °³¿ä | |
---|---|
protected void |
dispatchEvent (AWTEvent event)
À̺¥Æ®¸¦ µð½ºÆÐÄ¡ ÇÕ´Ï´Ù. |
static AWTEvent |
getCurrentEvent ()
ºÒ·Á °£ thread¿¡ °ü·ÃÁöÀ» ¼ö ÀÖ¾ú´ø EventQueue ¿¡ ÇöÀç µð½ºÆÐÄ¡ µÇ°í ÀÖ´Â À̺¥Æ®¸¦ µ¹·ÁÁÝ´Ï´Ù. |
static long |
getMostRecentEventTime ()
ºÒ·Á °£ thread¿¡ °ü·ÃÁöÀ» ¼ö ÀÖ¾ú´ø EventQueue ·ÎºÎÅÍ µð½ºÆÐÄ¡ µÈ, Á¦ÀÏ »õ·Î¿î ŸÀÓ ½ºÅÆÇÁ¸¦ °¡Áö´Â À̺¥Æ®ÀÇ Å¸ÀÓ ½ºÅÆÇÁ¸¦ µ¹·ÁÁÝ´Ï´Ù. |
AWTEvent |
getNextEvent ()
EventQueue ·ÎºÎÅÍ À̺¥Æ®¸¦ »èÁ¦ÇØ, ±× À̺¥Æ®¸¦ µ¹·ÁÁÝ´Ï´Ù. |
static void |
invokeAndWait (Runnable runnable)
runnable
run ¸Þ¼µå°¡ EventQueue
µð½ºÆÐÄ¡½º·¿µå·Î ºÒ·Á °¡µµ·Ï(µíÀÌ) ÇÕ´Ï´Ù. |
static void |
invokeLater (Runnable runnable)
runnable
run ¸Þ¼µå°¡ EventQueue
µð½ºÆÐÄ¡½º·¿µå·Î ºÒ·Á °¡µµ·Ï(µíÀÌ) ÇÕ´Ï´Ù. |
static boolean |
isDispatchThread ()
È£ÃâÃø thread°¡ ÇöÀçÀÇ AWT EventQueue
µð½ºÆÐÄ¡½º·¿µåÀÇ °æ¿ì¿¡ true¸¦
µ¹·ÁÁÝ´Ï´Ù. |
AWTEvent |
peekEvent ()
EventQueue
ÃÖÃÊÀÇ À̺¥Æ®¸¦ »èÁ¦ÇÏÁö ¾Ê°í µ¹·ÁÁÝ´Ï´Ù. |
AWTEvent |
peekEvent (int id)
ÁöÁ¤µÈ ID¸¦ °¡Áö´Â À̺¥Æ®°¡ ÀÖ´Â °æ¿ì, ±× ÁßÀÇ ÃÖÃÊÀÇ À̺¥Æ®¸¦ µ¹·ÁÁÝ´Ï´Ù. |
protected void |
pop ()
ÀÌ EventQueue ¸¦
»ç¿ëÇÏ´Â À̺¥Æ®ÀÇ µð½ºÆÐÄ¡¸¦ Á¤ÁöÇÕ´Ï´Ù. |
void |
postEvent (AWTEvent theEvent)
1. 1 Çü½ÄÀÇ À̺¥Æ®¸¦ EventQueue ¿¡ ¼Û½ÅÇÕ´Ï´Ù. |
void |
push (EventQueue newEventQueue)
±âÁ¸ÀÇ EventQueue ¸¦
, ÁöÁ¤µÈ EventQueue ·Î ¿Å°Ü³õ½À´Ï´Ù. |
Ŭ·¡½º java.lang. Object ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼µå |
---|
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
»ý¼ºÀÚ »ó¼¼ |
---|
public EventQueue()
¸Þ¼µåÀÇ »ó¼¼ |
---|
public void postEvent(AWTEvent theEvent)
EventQueue
¿¡ ¼Û½ÅÇÕ´Ï´Ù. °°Àº ID ¹× À̺¥Æ® ¼Ò½º¸¦ °¡Áö´Â Å¥¿¡ À̺¥Æ®°¡ ÀÖ´Â °æ¿ì´Â
¼Ò½º Component
coalesceEvents
¸Þ¼µå°¡ ºÒ·Á °©´Ï´Ù.
theEvent
- java.awt.AWTEvent
ÀνºÅϽº, ¶Ç´Â ±× ¼ºê Ŭ·¡½º
NullPointerException
- theEvent
°¡ null
°æ¿ìpublic AWTEvent getNextEvent() throws InterruptedException
EventQueue
·ÎºÎÅÍ À̺¥Æ®¸¦ »èÁ¦ÇØ, ±× À̺¥Æ®¸¦ µ¹·ÁÁÝ´Ï´Ù. ÀÌ ¸Þ¼µå´Â
´Ù¸¥ thread¿¡
ÇØ À̺¥Æ®°¡ ¼Û½ÅµÉ ¶§±îÁö ºí·Ï µË´Ï´Ù.
AWTEvent
InterruptedException
- º°ÀÇ thread°¡ ÀÌ thread¿¡ ³¢¾îµé¾úÀ» °æ¿ìpublic AWTEvent peekEvent()
EventQueue
ÃÖÃÊÀÇ À̺¥Æ®¸¦ »èÁ¦ÇÏÁö ¾Ê°í µ¹·ÁÁÝ´Ï´Ù.
public AWTEvent peekEvent(int id)
id
- ¿ä±¸ÇÏ´Â À̺¥Æ®ÇüÀÇ ID
null
protected void dispatchEvent(AWTEvent event)
À̺¥Æ®Çü | ¼Ò½ºÇü | µð½ºÆÐÄ¡ ¹æ¹ý |
---|---|---|
ActiveEvent | Any | event.dispatch() |
±× ¿Ü | Component | source.dispatchEvent(AWTEvent) |
±× ¿Ü | MenuComponent | source.dispatchEvent(AWTEvent) |
±× ¿Ü | ±× ¿Ü | 󸮵ÇÁö ¾Ê´Â´Ù (¹«½ÃµÈ´Ù) |
event
- java.awt.AWTEvent
ÀνºÅϽº, ¶Ç´Â ±× ¼ºê Ŭ·¡½º
NullPointerException
- event
°¡ null
°æ¿ìpublic static long getMostRecentEventTime()
EventQueue
·ÎºÎÅÍ µð½ºÆÐÄ¡ µÈ, Á¦ÀÏ »õ·Î¿î ŸÀÓ ½ºÅÆÇÁ¸¦ °¡Áö´Â À̺¥Æ®ÀÇ Å¸ÀÓ ½ºÅÆÇÁ¸¦ µ¹·ÁÁÝ´Ï´Ù. ŸÀÓ ½ºÅÆÇÁ¸¦ °¡Áö´Â À̺¥Æ®°¡ µð½ºÆÐÄ¡ÁßÀÇ °æ¿ì, ±× ŸÀÓ ½ºÅÆÇÁ°¡ µ¹·ÁÁÖ°íÁý´Ï´Ù. À̺¥Æ®°¡ ÀüÇô µð½ºÆÐÄ¡µÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì, EventQueue °¡ ÃʱâÈµÈ ½Ã°£ÀÌ µ¹·ÁÁÖ°íÁý´Ï´Ù. JDK
ÇöÀçÀÇ ¹öÁ¯¿¡¼´Â
InputEvent
,ActionEvent
¹× InvocationEvent
¸¸ÀÌ Å¸ÀÓ ½ºÅÆÇÁ¸¦ °¡Áý´Ï´Ù¸¸, Àå·¡ÀÇ ¹öÁ¯¿¡¼´Â ´Ù¸¥ À̺¥Æ®Çü¿¡µµ ŸÀÓ ½ºÅÆÇÁ°¡ Ãß°¡µÉ °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù. ÀÌ ¸Þ¼µå´Â ¾îÇø®ÄÉÀ̼ÇÀÇ À̺¥Æ®µð½ºÆÐÄ¡½º·¿µå·ÎºÎÅÍ ¸¶¼Å È£ÃâÇϵµ·Ï ÇØ ÁÖ¼¼¿ä. ´Ù¸¥ thread·ÎºÎÅÍ È£ÃâÇßÀ» °æ¿ì,System.currentTimeMillis()
·Î ¸®Æ÷Æ®µÇ´Â ÇöÀçÀÇ ½Ã½ºÅÛ ½Ã°¢ÀÌ µ¹·ÁÁÖ°íÁý´Ï´Ù.
InputEvent
,ActionEvent
, ¶Ç´Â InvocationEvent
ŸÀÓ ½ºÅÆÇÁ. ÀÌ ¸Þ¼µå°¡ À̺¥Æ®µð½ºÆÐÄ¡½º·¿µå Àܷ̿κÎÅÍ ºÒ·Á °¡´Â °æ¿ì´Â System.currentTimeMillis()
InputEvent.getWhen()
,
ActionEvent.getWhen()
,
InvocationEvent.getWhen()
public static AWTEvent getCurrentEvent()
EventQueue
¿¡ ÇöÀç µð½ºÆÐÄ¡ µÇ°í ÀÖ´Â À̺¥Æ®¸¦ µ¹·ÁÁÝ´Ï´Ù. ¸Þ¼µå°¡ À̺¥Æ®¿¡ ¾×¼¼½º ÇÒ Çʿ䰡 ÀÖ¾î, À̺¥Æ®¿¡ÀÇ ÂüÁ¶¸¦ Àμö·Î¼ ¹Þµµ·Ï ¼³°èµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì¿¡ À¯È¿ÇÕ´Ï´Ù. ÀÌ ¸Þ¼µå´Â ¾îÇø®ÄÉÀ̼ÇÀÇ À̺¥Æ®µð½ºÆÐÄ¡½º·¿µå·ÎºÎÅ͸¸ È£ÃâÇϵµ·Ï ÇØ ÁÖ¼¼¿ä. ´Ù¸¥ thread·ÎºÎÅÍ È£ÃâÇßÀ» °æ¿ì, null °¡ µ¹·ÁÁÖ°íÁý´Ï´Ù.
public void push(EventQueue newEventQueue)
EventQueue
¸¦
, ÁöÁ¤µÈ EventQueue
·Î ¿Å°Ü³õ½À´Ï´Ù. ´ë±â »óÅÂÀÇ À̺¥Æ®´Â
󸮸¦ À§Çؼ »õ·Î¿î EventQueue
¿¡ Àü¼Û µË´Ï´Ù.
newEventQueue
- »ç¿ëµÇ´Â EventQueue
¶Ç´Â ±× ¼ºê Ŭ·¡½ºÀÇ ÀνºÅϽº
NullPointerException
- newEventQueue
°¡ null
°æ¿ìpop()
protected void pop() throws EmptyStackException
EventQueue
¸¦
»ç¿ëÇÏ´Â À̺¥Æ®ÀÇ µð½ºÆÐÄ¡¸¦ Á¤ÁöÇÕ´Ï´Ù. ´ë±â »óÅÂÀÇ À̺¥Æ®´Â
󸮸¦ À§Çؼ ÀüÀÇ EventQueue
¿¡ Àü¼Û µË´Ï´Ù.
°æ°í: µ¥µå ·Ï ȸÇǸ¦ À§ÇØ, ÀÌ ¸Þ¼µå¸¦ ¼ºê Ŭ·¡½º¿¡¼ µ¿±â ¼±¾ðÇÏÁö ¾Ê°Ô ÇÕ´Ï´Ù.
EmptyStackException
- ÀÌ EventQueue
·Î ÀÌÀü¿¡ Ǫ½¬¸¦ ÇÏÁö ¾ÊÀº °æ¿ìpush(java.awt.EventQueue)
public static boolean isDispatchThread()
EventQueue
µð½ºÆÐÄ¡½º·¿µåÀÇ °æ¿ì¿¡ true¸¦
µ¹·ÁÁÝ´Ï´Ù. ÀÌ ¸Þ¼µå¸¦ »ç¿ëÇϸé, ÁöÁ¤µÈ ŽºÅ©¸¦ ÇöÀçÀÇ AWT EventDispatchThread
·Î È®½ÇÈ÷ ½ÇÇà½ÃŰ´Â (¶Ç´Â ½ÇÇà½ÃŰÁö ¾Ê°Ô ÇÑ´Ù) ÀÏÀÌ »ý±é´Ï´Ù.
EventQueue
µð½ºÆÐÄ¡½º·¿µå·Î µ¿ÀÛÇϰí ÀÖ´Â °æ¿ì´Â truepublic static void invokeLater(Runnable runnable)
runnable
run
¸Þ¼µå°¡ EventQueue
µð½ºÆÐÄ¡½º·¿µå·Î ºÒ·Á °¡µµ·Ï(µíÀÌ) ÇÕ´Ï´Ù. ´ë±â »óÅÂÀÇ ¸ðµç À̺¥Æ®°¡ ó¸®µÈ µÚ¿¡ ºÒ·Á °©´Ï´Ù.
runnable
- run
¸Þ¼µå°¡ EventQueue
·Î µ¿±â ½ÇÇàµÇÁö ¾ÊÀ¸¸é ¾È µÇ´Â Runnable
invokeAndWait(java.lang.Runnable)
public static void invokeAndWait(Runnable runnable) throws InterruptedException, InvocationTargetException
runnable
run
¸Þ¼µå°¡ EventQueue
µð½ºÆÐÄ¡½º·¿µå·Î ºÒ·Á °¡µµ·Ï(µíÀÌ) ÇÕ´Ï´Ù. ´ë±â »óÅÂÀÇ ¸ðµç À̺¥Æ®°¡ ó¸®µÈ ÈÄ¿¡ ½ÇÇàµË´Ï´Ù. È£ÃâÀº À̰ÍÀÌ ½ÇÇàµÉ ¶§±îÁö ºí·Ï µË´Ï´Ù. ÀÌ ¸Þ¼µå´Â
À̺¥Æ® µð½ºÆÖÃÄ thread·ÎºÎÅÍ ºÒ·Á °¡¸é Error¸¦
Throw ÇÕ´Ï´Ù.
runnable
- run
¸Þ¼µå°¡ EventQueue
·Î µ¿±â ½ÇÇàµÇÁö ¾ÊÀ¸¸é ¾È µÇ´Â Runnable
InterruptedException
- º°ÀÇ thread°¡ ÀÌ thread¿¡ ³¢¾îµé¾úÀ» °æ¿ì
InvocationTargetException
- runnable
µ¿ÀÛÁß¿¡ Throwable °¡ Throw µÇ´Â °æ¿ìinvokeLater(java.lang.Runnable)
|
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 µµ ÂüÁ¶ÇϽʽÿÀ.