JavaÏß³ÌÖ® InterruptedException Òì³£
µ±Ò»¸ö·½·¨ºóÃæÉùÃ÷¿ÉÄÜ»áÅ׳öInterruptedException Ò쳣ʱ£¬ËµÃ÷¸Ã·½·¨ÊÇ¿ÉÄܻỨһµãʱ¼ä£¬µ«ÊÇ¿ÉÒÔÈ¡ÏûµÄ·½·¨¡£
Å×InterruptedExceptionµÄ´ú±í·½·¨ÓУº
1. java.lang.Object ÀàµÄ wait ·½·¨
2. java.lang.Thread ÀàµÄ sleep ·½·¨
3. java.lang.Thread ÀàµÄ join ·½·¨
-- ÐèÒª»¨µãʱ¼äµÄ·½·¨
Ö´ÐÐwait·½·¨µÄỊ̈߳¬»á½øÈëµÈ´ýÇøµÈ´ý±»notify/notify All¡£ÔڵȴýÆÚ¼ä£¬Ï̲߳»»á»î¶¯¡£
Ö´ÐÐsleep·½·¨µÄỊ̈߳¬»áÔÝÍ£Ö´ÐвÎÊýÄÚËùÉèÖõÄʱ¼ä¡£
Ö´ÐÐjoin·½·¨µÄỊ̈߳¬»áµÈ´ýµ½Ö¸¶¨µÄÏ߳̽áÊøÎªÖ¹¡£
Òò´Ë£¬ÉÏÃæµÄ·½·¨¶¼ÊÇÐèÒª»¨µãʱ¼äµÄ·½·¨¡£
-- ¿ÉÒÔÈ¡ÏûµÄ·½·¨
ÒòΪÐèÒª»¨Ê±¼äµÄ²Ù×÷»á½µµÍ³ÌÐòµÄÏìÓ¦ÐÔ£¬ËùÒÔ¿ÉÄÜ»áÈ¡Ïû/ÖÐ;·ÅÆúÖ´ÐÐÕâ¸ö·½·¨¡£
ÕâÀïÖ÷ÒªÊÇͨ¹ýinterrupt·½·¨À´È¡Ïû¡£
1. sleep·½·¨Óëinterrupt·½·¨
interrupt·½·¨ÊÇThreadÀàµÄʵÀý·½·¨£¬ÔÚÖ´ÐеÄʱºò²¢²»ÐèÒª»ñÈ¡ThreadʵÀýµÄËø¶¨£¬ÈκÎÏß³ÌÔÚÈκÎʱ¿Ì£¬¶¼¿ÉÒÔͨ¹ýÏß³ÌʵÀýÀ´µ÷ÓÃÆäËûÏ̵߳Äinterrupt·½·¨¡£
µ±ÔÚsleepÖеÄÏ̱߳»µ÷ÓÃinterrupt·½·¨Ê±£¬¾Í»á·ÅÆúÔÝÍ£µÄ״̬£¬²¢Å׳öInterruptedExceptionÒì³££¬ÕâÑùÒ»À´£¬Ï̵߳ĿØÖÆÈ¨¾Í½»¸øÁ˲¶×½Õâ¸öÒì³£µÄcatch¿éÁË¡£
2. wait·½·¨ºÍinterrupt·½·¨
µ±Ï̵߳÷ÓÃwait·½·¨ºó£¬Ïß³ÌÔÚ½øÈëµÈ´ýÇøÊ±£¬»á°ÑËø¶¨½Ó´¥¡£µ±¶ÔwaitÖеÄÏ̵߳÷ÓÃinterrupt·½·¨Ê±£¬»áÏÈÖØÐ»ñÈ¡Ëø¶¨£¬ÔÙÅ׳öInterruptedExceptionÒì³££¬»ñÈ¡Ëø¶¨Ö®Ç°£¬ÎÞ·¨Å׳öInterruptedExceptionÒì³£¡£
3. join·½·¨ºÍinterrupt·½·¨
µ±Ïß³ÌÒÔjoin·½·¨µÈ´ýÆäËûÏ߳̽áÊøÊ±£¬Ò»Ñù¿ÉÒÔʹÓÃinterrupt·½·¨È¡Ïû¡£ÒòΪjoin·½·¨²»ÐèÒª»ñÈ¡Ëø¶¨£¬¹Ê¶øÓësleepÒ»Ñù£¬»áÂíÉÏÌøµ½catch³ÌÐò¿é
-- interrupt·½·¨¸ÉÁËʲô£¿
interrupt·½·¨ÆäʵֻÊǸıäÁËÖжÏ״̬¶øÒÑ¡£
¶øsleep¡¢waitºÍjoinÕâЩ·½·¨µÄÄÚ²¿»á²»¶ÏµÄ¼ì²éÖжÏ״̬µÄÖµ£¬´Ó¶ø×Ô¼ºÅ׳öInterruptEdException¡£
ËùÒÔ£¬Èç¹ûÔÚÏ߳̽øÐÐÆäËû´¦Àíʱ£¬µ÷ÓÃÁËËüµÄinterrupt·½·¨£¬Ïß³ÌÒ²²»»áÅ׳öInterruptedExceptionµÄ£¬Ö»Óе±Ïß³Ì×ßµ½ÁËsleep, wait, joinÕâЩ·½·¨µÄʱºò£¬²Å»áÅ׳öInterruptedException¡£ÈôÊÇûÓе÷ÓÃsleep, wait, joinÕâЩ·½·¨£¬»òÕßûÓÐÔÚÏß³ÌÀï×Ô¼º¼ì²éÖжÏ״̬£¬×Ô¼ºÅ׳öInterruptedException£¬ÄÇInterruptedExceptionÊDz»»áÅ׳öÀ´µÄ¡£
isInterrupted·½·¨£¬¿ÉÒÔÓÃÀ´¼ì²éÖжÏ״̬
Thread.interrupted·½·¨£¬¿ÉÒÔÓÃÀ´¼ì²é²¢Çå³ýÖжÏ״̬¡£
----------------------------------------------------
±¾ÎÄÖ÷Òª
Ïà¹ØÎĵµ£º
ÕâÊÇÒ»¸öC/SÖ®¼äͨÐŵÄÀý×Ó,ÔÚJDK1.4ϲâÊÔͨ¹ý.
//·þÎñÆ÷¶ËÔ´³ÌÐòtcpserver.java
import java.io.*;
import java.net.*;
public class tcpserver
{
public static void main(String[] args) throws IOException
{
......
JavaÈÝÆ÷ÀàѧϰÐĵÃ
ÓÉÓÚÎÒ¶ÔC++±È½ÏÊìϤ£¬ËùÒÔѧϰJavaÓ¦¸ÃÖØµãÌå»áJava´øÀ´µÄиÅÄî¡£±¾ÎÄ»ù±¾ÉÏÊÇJava±ê×¼¿âÖм¯ºÏ¿ò¼ÜµÄ»ù±¾¸ÅÄûÓÐÀý×Ó¡£Ð´±¾ÎĵÄÄ¿µÄÔÚÓÚ·½±ãÎҺܳ¤Ê±¼äºóÈôÊÇÍüÁËÕâЩ¶«Î÷¿ÉÒÔͨ¹ýÕâÆ¬ÎÄÕÂѸËÙ»ØÒäÆðÀ´¡£
1. ½Ó¿Ú
Õû¸öJavaÈÝÆ÷ÀàµÄ»ù´¡ÊÇÈÝÆ÷½Ó¿Ú£¨ÀýÈçCollection£¬MapµÈ½Ó¿Ú£©£¬¶ø²»ÊÇÀà ......
£¨1£©³õʼ»¯µÄ˳Ðò£¨¾²Ì¬¡¢·Ç¾²Ì¬¡¢final¡¢±äÁ¿¡¢¶ÔÏó£©
¶ÔÓÚ¾²Ì¬±äÁ¿¡¢¾²Ì¬³õʼ»¯¿é¡¢±äÁ¿¡¢³õʼ»¯¿é¡¢¹¹ÔìÆ÷£¬ËüÃǵijõʼ»¯Ë³ÐòÒÀ´ÎÊÇ£¨¾²Ì¬±äÁ¿¡¢¾²Ì¬³õʼ»¯¿é£©>£¨±äÁ¿¡¢³õʼ»¯¿é£©>¹¹ÔìÆ÷¡£
ÎÒÃÇÒ²¿ÉÒÔͨ¹ýÏÂÃæµÄ²âÊÔ´úÂëÀ´ÑéÖ¤ÕâÒ»µã£º
Java´úÂ룺
public class InitialOrderTest {
......
ÍÆ¼öÒ»¸ö¾ø¶Ô¾µäµÄÊÓÆµ£¬²»ºÃµÄÄÃשÅÄÎÒ°¡
ÎÞÒâÖÐÔÚÍøÉÏÏÂÔØµ½Ò»Ì×ÊÓÆµ£¬ÒѾȫ³ÌÌýÍ꣬¸Ð¾õ·Ç³£²»´í¡£´ÓJava»ù´¡¿ªÊ¼ÑÐò½¥½ø£¬ÓÉdzÈëÉÊÓÆµÖв»½ö¾«
±ÙµÄ½²½âÁËJava¿ª·¢µÄ֪ʶ£¬¶øÇÒÈÚÈëÁ˺ܶàѧϰ·½·¨µÄ½²½âºÍ±à³Ì˼ÏëµÄÒýµ¼£¬×ÛºÏÀ´Ëµ¿ÉÒÔÈË¿°³ÆÈëÃŵľµäÖ®
×÷!
ÌØ±ðÍÆ¼ö¸ø´ó¼Ò£¬´ó¼Ò¹²Í¬½ø²½¡£°ÑÍøÖ·¸ø´ ......
JavaÓïÑÔµÄÊäÈëÊä³ö¹¦ÄÜÊÇÊ®·ÖÇ¿´ó¶øÁé»îµÄ£¬ÃÀÖв»×ãµÄÊÇ¿´ÉÏÈ¥ÊäÈëÊä³öµÄ´úÂë²¢²»ÊǺܼò½à£¬ÒòΪÄãÍùÍùÐèÒª°ü×°Ðí¶à²»Í¬µÄ¶ÔÏó¡£ÔÚJavaÀà¿âÖУ¬IO²¿·ÖµÄÄÚÈÝÊǺÜÅÓ´óµÄ£¬ÒòΪËüÉæ¼°µÄÁìÓòºÜ¹ã·º:±ê×¼ÊäÈëÊä³ö£¬ÎļþµÄ²Ù×÷£¬ÍøÂçÉϵÄÊý¾ÝÁ÷£¬×Ö·û´®Á÷£¬¶ÔÏóÁ÷£¬zipÎļþÁ÷....±¾ÎĵÄÄ¿µÄÊÇΪ´ó¼Ò×öÒ»¸ö¼òÒªµÄ½éÉÜ¡£
......