|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
ÀÌÀü Ŭ·¡½º ´ÙÀ½ÀÇ Å¬·¡½º | ÇÁ·¹ÀÓÀ¸·Î ÇÁ·¹ÀÓ ¾øÀÌ | |||||||||
°³¿ä: NESTED | Çʵå | »ý¼ºÀÚ | ¸Þ¼µå | »ó¼¼: Çʵå | »ý¼ºÀÚ | ¸Þ¼µå |
public interface ThreadMXBean
Java °¡»ó ¸Ó½ÅÀÇ thread ½Ã½ºÅÛÀÇ °ü¸® ÀÎÅÍÆäÀ̽ºÀÔ´Ï´Ù.
Java °¡»ó ¸Ó½ÅÀº ÀÌ ÀÎÅÍÆäÀ̽ºÀÇ ±¸Çö Ŭ·¡½ºÀÇ ´ÜÀÏ ÀνºÅϽº¸¦ °¡Áý´Ï´Ù. ÀÌ ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇϰí ÀÖ´Â ÀνºÅϽº´Â ManagementFactory.getThreadMXBean()
¸Þ¼µå¸¦ È£ÃâÇØ ÃëµæÇÒ ¼ö ÀÖ´Ù, ȤÀº platform MBeanServer
¸Þ¼µå·ÎºÎÅÍ ÃëµæÇÒ ¼ö ÀÖ´Â MXBean ÀÔ´Ï´Ù.
MBeanServer ³»¿¡¼ thread ½Ã½ºÅÛÀÇ MXBean¸¦ ÀÏÀÇ¿¡ ½Äº°Çϱâ À§ÇÑ ObjectName´Â ÀÌÇÏ´ë·ÎÀÔ´Ï´Ù.
java.lang:type=Threading
Thread.getId()
¸Þ¼µåÀÇ È£Ãâ¿¡ ÀÇÇØ ¸®ÅÏµÈ Á¤ÀÇ long ÇüÀÇ °ªÀÔ´Ï´Ù. thread ID´Â ÀÏÀÇÀ̸ç, ±× ¼ö¸íÀ» ÅëÇØ¼ º¯°æµÉ °ÍÀº ¾ø½À´Ï´Ù. thread°¡ Á¾·áÇϸé, thread ID´Â ÀçÀÌ¿ë °¡´ÉÇÕ´Ï´Ù.
ÀÌ ÀÎÅÍÆäÀ̽ºÀÇ ÀϺÎÀÇ ¸Þ¼µå´Â ÀÔ·Â ÆÄ¶ó¹ÌÅͷμ thread ID ¶Ç´Â thread ID ¹è¿À» ÃëµæÇØ thread¸¶´ÙÀÇ Á¤º¸¸¦ ¸®ÅÏÇÕ´Ï´Ù.
isThreadCpuTimeSupported()
¸Þ¼µå¸¦ »ç¿ëÇØ, Java °¡»ó ¸Ó½ÅÀÌ ÀÓÀÇÀÇ thread¿¡ ´ëÇØ CPU ½Ã°£ÀÇ ÃøÁ¤À» Áö¿ø
ÇÒÁö ¾î¶³Áö¸¦ ÆÇÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¶ÇÇÑ, isCurrentThreadCpuTimeSupported()
¸Þ¼µå¸¦ »ç¿ëÇØ, Java °¡»ó ¸Ó½ÅÀÌ ÇöÀçÀÇ threadÀÇ CPU ½Ã°£ÀÇ ÃøÁ¤À» Áö¿ø
Çϰí ÀÖÀ»Áö ¾î¶³Áö¸¦ ÆÇÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÓÀÇÀÇ threadÀÇ CPU ½Ã°£ÀÇ ÃøÁ¤À» Áö¿ø
Çϰí ÀÖ´Â Java °¡»ó ¸Ó½ÅÀÇ ±¸ÇöÀº ÇöÀçÀÇ threadÀÇ CPU ½Ã°£ÀÇ ÃøÁ¤µµ Áö¿ø
Çϰí ÀÖ½À´Ï´Ù.
ÀÌ ÀÎÅÍÆäÀ̽º·Î Á¦°øµÈ CPU ½Ã°£Àº ³ª³ëÃÊ´ÜÀ§ÀÇ Á¤¹Ðµµ¸¦ Á¦°øÇÕ´Ï´Ù¸¸, ¹Ýµå½Ã ³ª³ëÃÊÀÇ Á¤È®µµ°¡ ¾Æ´Õ´Ï´Ù.
Java °¡»ó ¸Ó½Å¿¡¼´Â µðÆúÆ®·Î CPU ½Ã°£ÀÇ ÃøÁ¤À» ¹«È¿·Î ÇÒ ¼ö ÀÖ½À´Ï´Ù. isThreadCpuTimeEnabled()
¸Þ¼µå¿Í setThreadCpuTimeEnabled(boolean)
¸Þ¼µå¸¦ »ç¿ëÇØ, CPU ½Ã°£ ÃøÁ¤ÀÌ À¯È¿ÇÏ°Ô µÇ¾î ÀÖ´Â °ÍÀ» Å×½ºÆ®Çϰųª ÃøÁ¤ÀÇ Áö¿ø¸¦ À¯È¿ ¶Ç´Â ¹«È¿·Î Çϰųª ÇÒ ¼ö ÀÖ½À´Ï´Ù
. thread CPU ÃøÁ¤À» À¯È¿ÇÏ°Ô Çϸé, ÀϺÎÀÇ Java °¡»ó ¸Ó½ÅÀÇ ±¸Çö¿¡¼´Â ºÎÇϰ¡ Ä¿Áú °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù.
isThreadContentionMonitoringSupported()
¸Þ¼µå¸¦ »ç¿ëÇØ, Java °¡»ó ¸Ó½ÅÀÌ thread ÄÁÅÙ¼Ç °¨½Ã¸¦ Áö¿ø
Çϰí ÀÖÀ»Áö ¾î¶³Áö¸¦ ÆÇÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.
thread ÄÁÅÙ¼Ç °¨½Ã´Â µðÆúÆ®·Î ¹«È¿ÀÔ´Ï´Ù. setThreadContentionMonitoringEnabled(boolean)
¸Þ¼µå¸¦ »ç¿ëÇØ, thread ÄÁÅÙ¼Ç °¨½Ã¸¦ À¯È¿ÇÏ°Ô ÇÒ ¼ö ÀÖ½À´Ï´Ù
.
¸Þ¼µå °³¿ä | |
---|---|
long[] |
findMonitorDeadlockedThreads ()
°´Ã¼ ¸ð´ÏÅÍÀÇ ÃëµæÀ» ´ë±âÇϰí ÀÖ¾î µ¥µå ·Ï »óÅ¿¡ ÀÖ´Â threadÀÇ »çÀÌŬÀ» °Ë»öÇÕ´Ï´Ù. |
long[] |
getAllThreadIds ()
¸ðµç ¶óÀ̺ê threadÀÇ ID¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
long |
getCurrentThreadCpuTime ()
ÇöÀçÀÇ threadÀÇ ÇÕ°è CPU ½Ã°£À» ³ª³ëÃÊ´ÜÀ§·Î ¸®ÅÏÇÕ´Ï´Ù. |
long |
getCurrentThreadUserTime ()
ÇöÀçÀÇ thread°¡ »ç¿ëÀÚ ¸ðµå·Î ½ÇÇàÇÑ CPU ½Ã°£ (³ª³ëÃÊ´ÜÀ§)À» ¸®ÅÏÇÕ´Ï´Ù. |
int |
getDaemonThreadCount ()
¶óÀ̺ê demon threadÀÇ ÇöÀçÀÇ ¼ö¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
int |
getPeakThreadCount ()
Java °¡»ó ¸Ó½ÅÀÌ ½ÃÀÛµÈ ÀÌÈÄÀÇ, ¶Ç´Â ÇÇÅ©°¡ ¸®¼Â µÈ ÀÌÈÄÀÇ, ÇÇÅ© ¶óÀ̺ê thread Ä«¿îÆ®¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
int |
getThreadCount ()
demon thread¿Í demon ÀÌ¿ÜÀÇ thread¸¦ Æ÷ÇÔÇÑ ¶óÀ̺ê threadÀÇ ÇöÀçÀÇ ¼ö¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
long |
getThreadCpuTime (long id)
ÁöÁ¤µÈ ID threadÀÇ ÇÕ°è CPU ½Ã°£ (³ª³ëÃÊ´ÜÀ§)À» ¸®ÅÏÇÕ´Ï´Ù. |
ThreadInfo |
getThreadInfo (long id)
½ºÅà Ʈ·¹À̽º¸¦ °¡ÁöÁö ¾Ê´Â ÁöÁ¤µÈ id threadÀÇ thread Á¤º¸¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
ThreadInfo [] |
getThreadInfo (long[] ids)
½ºÅà Ʈ·¹À̽º¸¦ °¡ÁöÁö ¾Ê´Â ÀÔ·Â ¹è¿ ids¿¡ ÀÖ´Â ID¸¦ °¡Áö´Â thread¸¶´ÙÀÇ thread Á¤º¸¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
ThreadInfo [] |
getThreadInfo (long[] ids,
int maxDepth)
ÀÔ·Â ¹è¿ ids¿¡ ID¸¦ °¡Áö´Â °¢ threadÀÇ thread Á¤º¸¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
ThreadInfo |
getThreadInfo (long id,
int maxDepth)
ÁöÁ¤µÈ id threadÀÇ thread Á¤º¸¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
long |
getThreadUserTime (long id)
ÁöÁ¤µÈ ID thread°¡ »ç¿ëÀÚ ¸ðµå·Î ½ÇÇàÇÑ CPU ½Ã°£ (³ª³ëÃÊ´ÜÀ§)À» ¸®ÅÏÇÕ´Ï´Ù. |
long |
getTotalStartedThreadCount ()
Java °¡»ó ¸Ó½ÅÀÌ ½ÃÀÛÇÏ°í ³ª¼ ÀÛ¼º ¹× ½ÃÀÛµÈ threadÀÇ ÇÕ°è¼ö¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
boolean |
isCurrentThreadCpuTimeSupported ()
Java °¡»ó ¸Ó½ÅÀÌ ÇöÀçÀÇ threadÀÇ CPU ½Ã°£ ÃøÁ¤À» Áö¿ø ÇÒÁö ¾î¶³Áö¸¦ Å×½ºÆ®ÇÕ´Ï´Ù. |
boolean |
isThreadContentionMonitoringEnabled ()
thread ÄÁÅÙ¼Ç °¨½Ã°¡ À¯È¿ÇѰ¡ ¾î¶²°¡¸¦ Å×½ºÆ®ÇÕ´Ï´Ù. |
boolean |
isThreadContentionMonitoringSupported ()
Java °¡»ó ¸Ó½ÅÀÌ thread ÄÁÅÙ¼Ç °¨½Ã¸¦ Áö¿ø ÇÒÁö ¾î¶³Áö¸¦ Å×½ºÆ®ÇÕ´Ï´Ù. |
boolean |
isThreadCpuTimeEnabled ()
threadÀÇ CPU ½Ã°£ ÃøÁ¤ÀÌ À¯È¿ÇѰ¡ ¾î¶²°¡¸¦ Å×½ºÆ®ÇÕ´Ï´Ù. |
boolean |
isThreadCpuTimeSupported ()
Java °¡»ó ¸Ó½ÅÀÇ ±¸ÇöÀÌ ÀÓÀÇÀÇ threadÀÇ CPU ½Ã°£ ÃøÁ¤À» Áö¿ø ÇÒÁö ¾î¶³Áö¸¦ Å×½ºÆ®ÇÕ´Ï´Ù. |
void |
resetPeakThreadCount ()
ÇÇÅ© thread Ä«¿îÆ®¸¦ ¶óÀ̺ê threadÀÇ ÇöÀçÀÇ ¼ö¿¡ ¸®¼Â ÇÕ´Ï´Ù. |
void |
setThreadContentionMonitoringEnabled (boolean enable)
thread ÄÁÅÙ¼Ç °¨½Ã¸¦ À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÕ´Ï´Ù. |
void |
setThreadCpuTimeEnabled (boolean enable)
threadÀÇ CPU ½Ã°£ ÃøÁ¤À» À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÕ´Ï´Ù. |
¸Þ¼µåÀÇ »ó¼¼ |
---|
int getThreadCount()
int getPeakThreadCount()
long getTotalStartedThreadCount()
int getDaemonThreadCount()
long[] getAllThreadIds()
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì·Î È£Ãâ¿øÀÌ ManagementPermission("monitor")¸¦ °¡ÁöÁö ¾Ê´Â °æ¿ìThreadInfo getThreadInfo(long id)
getThreadInfo(id, 0);
ÀÌ ¸Þ¼µå´Â ÁöÁ¤µÈ ID thread¿¡ °üÇÑ thread Á¤º¸¸¦ ³ªÅ¸³»´Â ThreadInfo °´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù. ¸®ÅÏµÈ ThreadInfo °´Ã¼ÀÇ ½ºÅà Ʈ·¹À̽º´Â StackTraceElement ºñ¾îÀÖ´Â ¹è¿ÀÌ µË´Ï´Ù. ÁöÁ¤µÈ ID thread°¡ »ýÁ¸Çϰí ÀÖÁö ¾Ê´ÂÁö, Á¸ÀçÇϰí ÀÖÁö ¾Ê´Â °æ¿ì, ÀÌ ¸Þ¼µå´Â nullÀ» ¸®ÅÏÇÕ´Ï´Ù. ÁöÁ¤µÈ ID°¡ ½ÃÀÛµÇ¾î »ýÁ¸Çϰí ÀÖ´Â °æ¿ì, thread´Â »ýÁ¸Çϰí ÀÖ½À´Ï´Ù.
MBeanServer ¾×¼¼½º:
ThreadInfo
¸ÊÇüÀº, ThreadInfo
·Î ÁöÁ¤µÈ ¼Ó¼ºÀ» °¡Áö´Â CompositeData ÀÔ´Ï´Ù.
id
- threadÀÇ thread ID. Á¤ÀÇ °ªÀÌ ¾Æ´Ï¸é ¾ÈµÈ´Ù
ThreadInfo
°´Ã¼. ÁöÁ¤µÈ ID
thread°¡ »ýÁ¸ ¶Ç´Â Á¸ÀçÇϰí ÀÖÁö ¾Ê´Â °æ¿ì´Â null
IllegalArgumentException
- id <= 0ÀÎ °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì·Î È£Ãâ¿øÀÌ ManagementPermission("monitor")¸¦ °¡ÁöÁö ¾Ê´Â °æ¿ìThreadInfo [] getThreadInfo(long[] ids)
getThreadInfo
(ids, 0);
ÀÌ ¸Þ¼µå´Â ThreadInfo °´Ã¼ÀÇ ¹è¿À» ¸®ÅÏÇÕ´Ï´Ù. °¢ ThreadInfo °´Ã¼ÀÇ ½ºÅà Ʈ·¹À̽º´Â StackTraceElement ºñ¾îÀÖ´Â ¹è¿ÀÌ µË´Ï´Ù. ÁöÁ¤µÈ ID thread°¡ »ýÁ¸Çϰí ÀÖÁö ¾Ê´ÂÁö, Á¸ÀçÇϰí ÀÖÁö ¾Ê´Â °æ¿ì, ¸®ÅÏµÈ ¹è¿ÀÇ ´ëÀÀÇÏ´Â ¿ä¼Ò´Â nullÀ» Æ÷ÇÔÇÕ´Ï´Ù. ÁöÁ¤µÈ ID thread°¡ ½ÃÀÛµÇ¾î »ýÁ¸Çϰí ÀÖ´Â °æ¿ì, thread´Â »ýÁ¸Çϰí ÀÖ½À´Ï´Ù.
MBeanServer ¾×¼¼½º:
ThreadInfo
¸ÊÇüÀº, ThreadInfo
·Î ÁöÁ¤µÈ ¼Ó¼ºÀ» °¡Áö´Â CompositeData ÀÔ´Ï´Ù.
ids
- thread ID
¹è¿
ThreadInfo
°´Ã¼ÀÇ ¹è¿
IllegalArgumentException
- ÀÔ·Â ¹è¿ ids
¿ä¼Ò°¡ <= 0 ÀÎ °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì·Î È£Ãâ¿øÀÌ ManagementPermission("monitor")¸¦ °¡ÁöÁö ¾Ê´Â °æ¿ìThreadInfo getThreadInfo(long id, int maxDepth)
Java °¡»ó ¸Ó½ÅÀÌ threadÀÇ ½ºÅà Ʈ·¹À̽º Á¤º¸¸¦ °¡ÁöÁö ¾Ê´Â °æ¿ì, ¶Ç´Â maxDepth == 0ÀÎ °æ¿ì, ThreadInfo °´Ã¼ÀÇ ½ºÅà Ʈ·¹À̽º´Â StackTraceElement ºñ¾îÀÖ´Â ¹è¿ÀÌ µË´Ï´Ù.
ÁöÁ¤µÈ ID thread°¡ »ýÁ¸Çϰí ÀÖÁö ¾Ê´ÂÁö, Á¸ÀçÇϰí ÀÖÁö ¾Ê´Â °æ¿ì, ÀÌ ¸Þ¼µå´Â nullÀ» ¸®ÅÏÇÕ´Ï´Ù. ÁöÁ¤µÈ ID°¡ ½ÃÀÛµÇ¾î »ýÁ¸Çϰí ÀÖ´Â °æ¿ì, thread´Â »ýÁ¸Çϰí ÀÖ½À´Ï´Ù.
MBeanServer ¾×¼¼½º:
ThreadInfo
¸ÊÇüÀº, ThreadInfo
·Î ÁöÁ¤µÈ ¼Ó¼ºÀ» °¡Áö´Â CompositeData ÀÔ´Ï´Ù.
id
- threadÀÇ thread ID. Á¤ÀÇ °ªÀÌ ¾Æ´Ï¸é ¾ÈµÇ´ÂmaxDepth
- ´ýÇÁ µÇ´Â ½ºÅà Ʈ·¹À̽ºÀÇ ¿£Æ®¸®ÀÇ ÃÖ´ë¼ö. Integer.MAX_VALUE¸¦ »ç¿ëÇØ, ½ºÅà Àüü¸¦ ´ýÇÁ Çϵµ·Ï ¿ä±¸ÇÒ ¼ö ÀÖ´Ù
ThreadInfo
. ÁöÁ¤µÈ ID
thread°¡ »ýÁ¸ ¶Ç´Â Á¸ÀçÇϰí ÀÖÁö ¾Ê´Â °æ¿ì´Â null
IllegalArgumentException
- id <= 0ÀÎ °æ¿ì
IllegalArgumentException
- maxDepth is negativeÀÎ °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì·Î È£Ãâ¿øÀÌ ManagementPermission("monitor")¸¦ °¡ÁöÁö ¾Ê´Â °æ¿ìThreadInfo [] getThreadInfo(long[] ids, int maxDepth)
Java °¡»ó ¸Ó½ÅÀÌ threadÀÇ ½ºÅà Ʈ·¹À̽º Á¤º¸¸¦ °¡ÁöÁö ¾Ê´Â °æ¿ì, ¶Ç´Â maxDepth == 0ÀÎ °æ¿ì, ThreadInfo °´Ã¼ÀÇ ½ºÅà Ʈ·¹À̽º´Â StackTraceElement ºñ¾îÀÖ´Â ¹è¿ÀÌ µË´Ï´Ù.
ÀÌ ¸Þ¼µå´Â ThreadInfo °´Ã¼ÀÇ ¹è¿À» ¸®ÅÏÇÕ´Ï´Ù. ¹è¿ÀÇ °¢ ¿ä¼Ò´Â ids ¹è¿°ú °°Àº À妽º¸¦ °¡Áö´Â thread¿¡ °üÇÑ thread Á¤º¸ÀÔ´Ï´Ù. ÁöÁ¤µÈ ID thread°¡ »ýÁ¸Çϰí ÀÖÁö ¾Ê´ÂÁö, Á¸ÀçÇÏÁö ¾Ê´Â °æ¿ì, ¸®ÅÏµÈ ¹è¿ÀÇ ´ëÀÀÇÏ´Â ¿ä¼Ò¿¡ null°¡ ¼³Á¤µË´Ï´Ù. ÁöÁ¤µÈ thread ID°¡ ½ÃÀ۵Ǿú´ÂÁö »ýÁ¸Çϰí ÀÖ´Â °æ¿ì, thread´Â »ýÁ¸Çϰí ÀÖ½À´Ï´Ù.
MBeanServer ¾×¼¼½º:
ThreadInfo
¸ÊÇüÀº, ThreadInfo
·Î ÁöÁ¤µÈ ¼Ó¼ºÀ» °¡Áö´Â CompositeData ÀÔ´Ï´Ù.
ids
- thread ID
¹è¿maxDepth
- ´ýÇÁ µÇ´Â ½ºÅà Ʈ·¹À̽ºÀÇ ¿£Æ®¸®ÀÇ ÃÖ´ë¼ö. Integer.MAX_VALUE¸¦ »ç¿ëÇØ, ½ºÅà Àüü¸¦ ´ýÇÁ Çϵµ·Ï ¿ä±¸ÇÒ ¼ö ÀÖ´Ù
ThreadInfo
°´Ã¼ÀÇ ¹è¿
IllegalArgumentException
- maxDepth is negativeÀÎ °æ¿ì
IllegalArgumentException
- ÀÔ·Â ¹è¿ ids
¿ä¼Ò°¡ <= 0 ÀÎ °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì·Î È£Ãâ¿øÀÌ ManagementPermission("monitor")¸¦ °¡ÁöÁö ¾Ê´Â °æ¿ìboolean isThreadContentionMonitoringSupported()
boolean isThreadContentionMonitoringEnabled()
UnsupportedOperationException
- Java °¡»ó ¸Ó½ÅÀÌ thread ÄÁÅÙ¼Ç °¨½Ã¸¦ Áö¿ø
ÇÏÁö ¾Ê´Â °æ¿ìisThreadContentionMonitoringSupported()
void setThreadContentionMonitoringEnabled(boolean enable)
enable
- À¯È¿ÇÏ°Ô ÇÏ´Â °æ¿ì´Â true, ¹«È¿·Î ÇÏ´Â °æ¿ì´Â false
UnsupportedOperationException
- Java °¡»ó ¸Ó½ÅÀÌ thread ÄÁÅÙ¼Ç °¨½Ã¸¦ Áö¿ø
ÇÏÁö ¾Ê´Â °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì·Î È£Ãâ¿øÀÌ ManagementPermission("control")¸¦ °¡ÁöÁö ¾Ê´Â °æ¿ìisThreadContentionMonitoringSupported()
long getCurrentThreadCpuTime()
ÀÌ ¸Þ¼µå´Â ·ÎÄà °ü¸®·Î »ç¿ëÇÏ´Â °£ÀÌ ¸Þ¼µåÀ̸ç, ÀÌÇϸ¦ È£ÃâÇÏ´Â °Í°ú µ¿µîÇÕ´Ï´Ù.
getThreadCpuTime
(Thread.currentThread(). getId());
UnsupportedOperationException
- Java °¡»ó ¸Ó½ÅÀÌ ÇöÀçÀÇ threadÀÇ CPU ½Ã°£ ÃøÁ¤À» Áö¿ø
ÇÏÁö ¾Ê´Â °æ¿ìgetCurrentThreadUserTime()
,
isCurrentThreadCpuTimeSupported()
,
isThreadCpuTimeEnabled()
,
setThreadCpuTimeEnabled(boolean)
long getCurrentThreadUserTime()
ÀÌ ¸Þ¼µå´Â ·ÎÄà °ü¸®·Î »ç¿ëÇÏ´Â °£ÀÌ ¸Þ¼µåÀ̸ç, ÀÌÇϸ¦ È£ÃâÇÏ´Â °Í°ú µ¿µîÇÕ´Ï´Ù.
getThreadUserTime
(Thread.currentThread(). getId());
UnsupportedOperationException
- Java °¡»ó ¸Ó½ÅÀÌ ÇöÀçÀÇ threadÀÇ CPU ½Ã°£ ÃøÁ¤À» Áö¿ø
ÇÏÁö ¾Ê´Â °æ¿ìgetCurrentThreadCpuTime()
,
isCurrentThreadCpuTimeSupported()
,
isThreadCpuTimeEnabled()
,
setThreadCpuTimeEnabled(boolean)
long getThreadCpuTime(long id)
ÁöÁ¤µÈ ID thread°¡ »ýÁ¸Çϰí ÀÖÁö ¾Ê´ÂÁö, Á¸ÀçÇϰí ÀÖÁö ¾Ê´Â °æ¿ì, ÀÌ ¸Þ¼µå´Â -1À» ¸®ÅÏÇÕ´Ï´Ù. CPU ½Ã°£ ÃøÁ¤ÀÌ ¹«È¿ÀÇ °æ¿ì, ÀÌ ¸Þ¼µå´Â -1À» ¸®ÅÏÇÕ´Ï´Ù. ÁöÁ¤µÈ ID thread°¡ ½ÃÀÛµÇ¾î »ýÁ¸Çϰí ÀÖ´Â °æ¿ì, thread´Â »ýÁ¸Çϰí ÀÖ½À´Ï´Ù.
thread°¡ ½ÃÀÛµÈ µÚ¿¡ CPU ½Ã°£ ÃøÁ¤ÀÌ À¯È¿ÇÏ°Ô µÇ¾úÀ» °æ¿ì, Java °¡»ó ¸Ó½ÅÀÇ ±¸Çö¿¡¼´Â CPU ½Ã°£ ÃøÁ¤ÀÌ ½ÃÀÛµÈ Æ÷ÀÎÆ®·Î¼ CPU ½Ã°£ ÃøÁ¤ ±â´ÉÀÌ À¯È¿ÇÏ°Ô µÈ ½Ã°£ ÀÌÀüÀÇ ÀÓÀÇÀÇ ½Ã°£À» ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù.
id
- threadÀÇ thread ID
IllegalArgumentException
- id <= 0ÀÎ °æ¿ì
UnsupportedOperationException
- Java °¡»ó ¸Ó½ÅÀÌ ´Ù¸¥ threadÀÇ CPU ½Ã°£ ÃøÁ¤À» Áö¿ø
ÇÏÁö ¾Ê´Â °æ¿ìgetThreadUserTime(long)
,
isThreadCpuTimeSupported()
,
isThreadCpuTimeEnabled()
,
setThreadCpuTimeEnabled(boolean)
long getThreadUserTime(long id)
ÁöÁ¤µÈ ID thread°¡ »ýÁ¸Çϰí ÀÖÁö ¾Ê´ÂÁö, Á¸ÀçÇϰí ÀÖÁö ¾Ê´Â °æ¿ì, ÀÌ ¸Þ¼µå´Â -1À» ¸®ÅÏÇÕ´Ï´Ù. CPU ½Ã°£ ÃøÁ¤ÀÌ ¹«È¿ÀÇ °æ¿ì, ÀÌ ¸Þ¼µå´Â -1À» ¸®ÅÏÇÕ´Ï´Ù. ÁöÁ¤µÈ ID thread°¡ ½ÃÀÛµÇ¾î »ýÁ¸Çϰí ÀÖ´Â °æ¿ì, thread´Â »ýÁ¸Çϰí ÀÖ½À´Ï´Ù.
thread°¡ ½ÃÀÛµÈ µÚ¿¡ CPU ½Ã°£ ÃøÁ¤ÀÌ À¯È¿ÇÏ°Ô µÇ¾úÀ» °æ¿ì, Java °¡»ó ¸Ó½ÅÀÇ ±¸Çö¿¡¼´Â CPU ½Ã°£ ÃøÁ¤ÀÌ ½ÃÀÛµÈ Æ÷ÀÎÆ®·Î¼ CPU ½Ã°£ ÃøÁ¤ ±â´ÉÀÌ À¯È¿ÇÏ°Ô µÈ ½Ã°£ ÀÌÀüÀÇ ÀÓÀÇÀÇ ½Ã°£À» ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù.
id
- threadÀÇ thread ID
IllegalArgumentException
- id <= 0ÀÎ °æ¿ì
UnsupportedOperationException
- Java °¡»ó ¸Ó½ÅÀÌ ´Ù¸¥ threadÀÇ CPU ½Ã°£ ÃøÁ¤À» Áö¿ø
ÇÏÁö ¾Ê´Â °æ¿ìgetThreadCpuTime(long)
,
isThreadCpuTimeSupported()
,
isThreadCpuTimeEnabled()
,
setThreadCpuTimeEnabled(boolean)
boolean isThreadCpuTimeSupported()
boolean isCurrentThreadCpuTimeSupported()
isThreadCpuTimeSupported()
°¡ true¸¦ µ¹·ÁÁÖ´Â °æ¿ì, ÀÌ ¸Þ¼µå´Â true¸¦ ¸®ÅÏÇÕ´Ï´Ù.
boolean isThreadCpuTimeEnabled()
UnsupportedOperationException
- Java °¡»ó ¸Ó½ÅÀÌ ´Ù¸¥ thread »Ó¸¸ÀÌ ¾Æ´Ï¶ó ÇöÀçÀÇ threadÀÇ CPU ½Ã°£ ÃøÁ¤µµ Áö¿ø
ÇÏÁö ¾Ê´Â °æ¿ìisThreadCpuTimeSupported()
,
isCurrentThreadCpuTimeSupported()
void setThreadCpuTimeEnabled(boolean enable)
enable
- À¯È¿ÇÏ°Ô ÇÏ´Â °æ¿ì´Â true, ¹«È¿·Î ÇÏ´Â °æ¿ì´Â false
UnsupportedOperationException
- Java °¡»ó ¸Ó½ÅÀÌ ÀÓÀÇÀÇ thread »Ó¸¸ÀÌ ¾Æ´Ï¶ó ÇöÀçÀÇ threadÀÇ CPU ½Ã°£ ÃøÁ¤µµ Áö¿ø
ÇÏÁö ¾Ê´Â °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì·Î È£Ãâ¿øÀÌ ManagementPermission("control")¸¦ °¡ÁöÁö ¾Ê´Â °æ¿ìisThreadCpuTimeSupported()
,
isCurrentThreadCpuTimeSupported()
long[] findMonitorDeadlockedThreads()
Object.wait
È£ÃâµÚ, µ¿±â ºí·Ï¿¡ ÀçÀÔ ÇÏ´Â °ÍÀ» ´ë±âÇϰí ÀÖ½À´Ï´Ù. ¿©±â¿¡¼´Â »çÀÌŬÁßÀÇ ´Ù¸¥ thread¿¡ ÀÇÇØ º¸°ü À¯ÁöµÇ°í ÀÖ´Â ´Ù¸¥ ¸ð´ÏÅÍÀÇ ÃëµæÀ» ½ÃÇàÇϰí ÀÖ´Â µ¿¾È, °¢ thread´Â 1°³ÀÇ ¸ð´ÏÅ͸¦ º¸À¯Çϰí ÀÖ½À´Ï´Ù.
°ø½ÄÀ¸·Î´Â thread°¡ ¡¸´Ù¸¥ thread¿¡ ÀÇÇØ º¸À¯µÇ´Â °´Ã¼ ¸ð´ÏÅ͸¦ ´ë±âÇϰí ÀÖ´Ù¡¹°ü°è¿¡ ÀÖ´Â »çÀÌŬÀÇ ÀϺÎÀÎ °æ¿ì, thread´Â ¡¸¸ð´ÏÅÍ µ¥µå ·Ï¡¹µË´Ï´Ù. ¹«¾ùº¸´Ù °£´ÜÇÑ ÄÉÀ̽º¿¡ ´ëÇØ ¼³¸íÇϸé, thread A´Â thread B°¡ ¼ÒÀ¯ÇÏ´Â ¸ð´ÏÅ͸¦ ´ë±âÇÏ´Â °ÍÀ» ºí·Ï µÇ¾î thread B´Â thread A°¡ ¼ÒÀ¯ÇÏ´Â ¸ð´ÏÅ͸¦ ´ë±âÇÏ´Â °ÍÀ» ºí·Ï µË´Ï´Ù.
ÀÌ ¸Þ¼µå´Â Æ®·¯ºí ½´ÆÃÀ» À§Çؼ ¼³°èµÇ°í ÀÖ½À´Ï´Ù¸¸, µ¿±â Á¦¾î¸¦ À§ÇÑ °ÍÀÌ ¾Æ´Õ´Ï´Ù. ÀÌ ¸Þ¼µåÀÇ Á¶ÀÛÀº ºÎÇϰ¡ Ä¿Áú °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù.
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì·Î È£Ãâ¿øÀÌ ManagementPermission("monitor")¸¦ °¡ÁöÁö ¾Ê´Â °æ¿ìvoid resetPeakThreadCount()
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì·Î È£Ãâ¿øÀÌ ManagementPermission("control")¸¦ °¡ÁöÁö ¾Ê´Â °æ¿ìgetPeakThreadCount()
,
getThreadCount()
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
ÀÌÀü Ŭ·¡½º ´ÙÀ½ÀÇ Å¬·¡½º | ÇÁ·¹ÀÓÀ¸·Î ÇÁ·¹ÀÓ ¾øÀÌ | |||||||||
°³¿ä: NESTED | Çʵå | »ý¼ºÀÚ | ¸Þ¼µå | »ó¼¼: Çʵå | »ý¼ºÀÚ | ¸Þ¼µå |
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy µµ ÂüÁ¶ÇϽʽÿÀ.