Posted by ±è´öÅ on April 25, 1997 at 22:33:36:
In Reply to: [Áú¹®] Thread Á¦¾î°¡ Àß ¾ÈµË´Ï´Ù. posted by Çϵ¿¿í on April 21, 1997 at 14:06:18:
ÇöÀç±îÁö´Â NetscapeÀÇ ¸ðµç ¹öÁ¯¿¡¼ suspend »óÅ °ü¸®¿¡ ¹®Á¦°¡ ÀÖ´Â °Í °°½À´Ï´Ù.
suspend½ÃÄ״µ¥µµ ÀÚ²Ù ±ú¾î³ª´õ±º¿ä.
ÀÌ·± bug¿¡ ´ëÇÑ ÀϹÝÀûÀÎ ´ëó ¹æ¾ÈÀº °¢ ¾²·¹µå¿¡ ´ëÇÏ¿© suspendµÇ´Â »óŸ¦ ³ªÅ¸³»´Â boolean º¯¼ö¸¦
¿¬°ü½ÃÅ°°í, suspend ½Ãų¶§´Â ÀÌ·± booleanº¯¼ö (°¡·É, suspended°°Àº À̸§À¸·Î)¸¦
true·Î ¸¸µé¾îÁÖ°í suspend½ÃÅ´´Ï´Ù.
resume½Ãų¶§´Â false·Î ¸¸µé¾îÁÖ°í resumeÀ» ½Ãŵ´Ï´Ù.
µû¶ó¼, °¢ ¾²·¹µå¿¡ ´ëÇÏ¿© `suspended' º¯¼öÀÇ °ªÀÌ trueÀ̸é, ±× ¾²·¹µå°¡ ±ú¾î³µ¾îµµ
À߸ø ±ú¾î³ °ÍÀ̹ǷΠloop¸¦ µ¹·Á¼ ÀÚ½ÅÀ» suspend½ÃÅ°¸é ÇØ°áÀÌ µË´Ï´Ù.
¹°·Ð, ÀÌ·± bug°¡ ¾ø´Â ºê¶ó¿ìÀú¿¡¼µµ ¹®Á¦¾øÀÌ µ¿ÀÛÇÏ°Ô µË´Ï´Ù.
°¡·É, ´ÙÀ½°ú °°ÀÌ ÇÏ¸é µË´Ï´Ù.
class MyThread extends Thread
{
public boolean suspended = false;
public void run()
{ ....
while( suspended ) // ¾²·¹µå°¡ ÀÚ½ÅÀ» suspend½Ãų¶§´Â ÀÌ·¸°Ô loop·Î ¸¸µç´Ù.
suspend();
....
}
}class SomethingElse
{
public void main(String[] args)
{ MyThread thread1 = new MyThread();
MyThread thread2 = new MyThread();
thread1.start();
thread2.start();
.......
thread1.suspended = false; // resume½ÃÅ°±â Àü¿¡´Â ÀÌ·¸°Ô ÇÑ´Ù.
thread1.resume();..........
}
}
p.s.
¸ðµç ÇÁ·Î±×·¥Àº ¹ö±×°¡ ÀÖ½À´Ï´Ù.
µû¶ó¼, Netscapeµµ ¹ö±×°¡ ÀÖ½À´Ï´Ù.
ÇÁ·Î±×·¥Àº »ç¶÷ÀÌ ¸¸µå´Â °ÍÀÌ´Ï ¹ö±×°¡ ÀÖ´Â °ÍÀº ¾î¿ ¼ö ¾ø´Â °ÍÀ̶ó, ÀÌ¿¡ ´ëóÇØ°¡¸é¼ »ì¾Æ°¡¾ß°ÚÁÒ.
¿µ¾î·Î´Â workaround¶ó°íµµ ÇÏ°í.
±×·±µ¥, M$´Â Â÷ÈÄ¿¡ ¹ßÇ¥µÉ IE¿¡ JDKÀÇ »õ·Î¿î Ç¥ÁØ ÆÐÅ°Áö¸¦ ¸ðµÎ Áö¿øÇÏÁö ¾ÊÀ» ¹æħÀ̶ó°í ÇÏ´õ±º¿ä.
½Ç¼ö¿¡ ÀÇÇÑ ¹ö±×´Â °ð °íÃÄÁö°Ô µÇÁö¸¸, ÀÌ·¯ÇÑ ÀǵµÀûÀÎ ¹ö±×´Â (º»ÀÎÀº ±×·¸°Ô º¸°í ÀÖÀ½)
ÀÚ¹Ù ÇÁ·Î±×·¡¸Ó ¹× ÇÁ·Î±×·¥ »ç¿ëÀÚ¿¡°Ô Ä¿´Ù¶õ ºÒÆí°ú È¥¶õÀ» Àå±âÀûÀ¸·Î ¾ß±âÇÒ °ÍÀÔ´Ï´Ù.
Á¦°¡ °³ÀÎÀûÀ¸·Î ÀÚ¹Ù°¡ ¸¶À½¿¡ µå´Â °¡Àå Å« ÀÌÀ¯´Â,
1. platform°ú languageÀÇ Â÷ÀÌ¿¡ ÀÇÇØ ¼·Î ´ÜÀýµÇ°í Áߺ¹µÇ´Â ¼ÒÇÁÆ®¿þ¾î ¿£Áö´Ï¾îÀÇ
³ë·ÂÀÌ °áÁýµÉ ¼ö ÀÖ´Â Áß¿äÇÑ ¹ßÆÇÀ» Á¦°øÇÏ°í,
2. PC, Unix, Mac»ç¿ëÀÚµéÀÌ ¼·Î µ¿ÀÏÇÑ ÇÁ·Î±×·¥À» »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ÇÔÀ¸·Î½á
¼ÒÇÁÆ®¿þ¾î »ç¿ë¹ý¿¡ ´ëÇÑ Á¤º¸ ±³È¯ ¹× ÀÌµé ¼ÒÇÁÆ®¿þ¾îÀÇ ÀÇÇØ ¸¸µé¾îÁø ¹®¼¸¦
±³È¯ÇϱⰡ ½±±â¶§¹®ÀÔ´Ï´Ù.
µû¶ó¼, ÀǵµÀûÀ¸·Î Ç¥ÁØ ÆÐÅ°Áö¸¦ ¸ðµÎ ±¸ÇöÇÏÁö ¾Ê°Å³ª À̸¦ À绡¸® ±¸ÇöÇÏÁö ¾Ê´Â ºê¶ó¿ìÀú´Â
ÇÁ·Î±×·¡¸Ó ¹× »ç¿ëÀÚ°¡ öÀúÇÏ°Ô ¹èô½ÃÅ°´Â °Í¸¸ÀÌ
¿ì¸®ÀÇ ÀÌÀÍÀ» º¸È£ÇÏ´Â À¯ÀÏÇÑ ±æÀ̶ó »ý°¢ÇÕ´Ï´Ù.