Java ¶àÏ̱߳à³ÌÖ®ÆߣºËÀËø£¨¸½Ô´´úÂ룩
Java ¶àÏ̱߳à³ÌÖ®ÆߣºËÀËø£¨¸½Ô´´úÂ룩
Ô´´úÂëÏÂÔØ
¶àÏ̱߳à³ÌÖУ¬Ïß³ÌËÀËøÒ²ÊÇÒ»¸ö±È½ÏÓÐȤµÄÎÊÌ⡣Ȼ¶øËÀËø·¢ÉúµÄ¿ÉÄÜÐÔºÜС£¬ÕýÒòÈç´Ë£¬´ó¼Ò¿ÉÄܶԴ˲»ÊǺÜÊìϤ¡£µ«ÊÇËÀËø²¢²»ÊDz»ÖØÒª£¬ÒòΪËüȷȷʵʵ´æÔÚ×Å£¬Ëæʱ»á³öÏÖÔÚÎÒÃǵijÌÐòÖ®ÖС£ºÜ¶àÅóÓÑÃæÊÔµÄʱºò¶¼Óöµ½¹ýÕâÑùÀàËƵÄÒ»¸ö±à³ÌÌ⣺ʹÓà Java дһ¸öËÀËø¡£ÎÊÌâ²»ÊǺÜÄÑ£¬µ«ÊÇÓÉÓÚ´ó¼ÒÏÖʵÖд¦ÀíµÄ±È½ÏÉÙ£¬»¹ÕæÄÑסÁËÒ»²¿·ÖÈË¡£±¾ÎÄÁоÙÁËÒ»¸ö¼òµ¥µ«ÓÖ²»Ê§Îª¾µäµÄËÀËøµÄÔ´´úÂ룬²¢½âÊÍÁËËÀËø·¢ÉúµÄÔÒò¡£ÏàÐŶÁÕß¿´¹ýÖ®ºó¶ÔËÀËø»áÓиü½øÒ»²½µÄÈÏʶ£¡
ËÀËø·¢ÉúµÄÔÒòÒ»°ãÊÇÁ½¸ö¶ÔÏóµÄËøÏ໥µÈ´ýÔì³ÉµÄ¡£±ÈÈçÏß³Ì 1 ÏÈÄõ½Á˶ÔÏó A µÄ¶ÔÏóËø£¬Ïß³Ì 2 ÏÈÄõ½Á˶ÔÏó B µÄ¶ÔÏóËø¡£Ïß³Ì 1 ÕâʱºòÒªÇóÄõ½¶ÔÏó B µÄ¶ÔÏóËø£¬ÒòΪ¶ÔÏó B µÄ¶ÔÏóËøÔÝʱ±»Ïß³Ì 2 Ëù³ÖÓУ¬ËùÒÔÏß³Ì 1 Ö»Äܱ§×ŶÔÏó A µÄ¶ÔÏóËøµÈ´ýÏß³Ì 2 Êͷŵô¶ÔÏó B µÄ¶ÔÏóËø¡£¶øÈç¹ûÕâ¸öʱºò£¬³ÖÓжÔÏó B µÄ¶ÔÏóËøµÄÏß³Ì 2 ÒªÇó·ÃÎʶÔÏó A µÄ¶ÔÏóËø£¬ÒòΪ¶ÔÏó A µÄ¶ÔÏóËøÔÝʱ±»Ïß³Ì 1 Ëù³ÖÓУ¬ËùÒÔÏß³Ì 2 Ö»Äܱ§×ŶÔÏó B µÄ¶ÔÏóËøµÈ´ýÏß³Ì 1 Êͷŵô¶ÔÏó A µÄ¶ÔÏóËø¡£Õâ¸öʱºòÁ½¸öÏ߳̾ÍÏÝÈëÁË»¥ÏàµÈ´ýµÄ½©¾ÖÖ®ÖС£³ÌÐò¾Í½øÈëÁËËÀËøµÄ״̬£¬³ý·ÇÄãÊÖ¹¤Í£µôÕâ¸ö³ÌÐò£¬·ñÔòËü½«ÓÀ¾ÃµØ½©³ÖÏÂÈ¥¡£
ÊDz»ÊÇÓеãÈÆ£¿ºÙºÙ£¬Èç¹ûÄãŪÃ÷°×Á˶ÔÏóËøµÄ¸ÅÄËÀËøµÄÔÒòÒ²¾ÍһĿÁËÈ»¡£¹ØÓÚ¶ÔÏóËø£¬×÷ÕßÔÚÉÏһƪ²©¿Í¡¶Java ¶àÏ̱߳à³ÌÖ®Áù£ºÏß³ÌÖ®¼äµÄͨÐÅ£¨¸½Ô´´úÂ룩
¡·ÖÐÓÐËù½éÉÜ£¬ÕâÀï¾Í²»ÔÙ׸ÊöÁË¡£
ÓôúÂë˵Ã÷ÎÊÌ⣬ֱ½Ó¿´´úÂëÑÝʾ¡£
ËÀËøÀý×Ó£×ÊÔ´Ô´´úÂë
package com.defonds.deadlock;
/**
*
*
* ÏîÄ¿Ãû³Æ£ºThreadDeadLock
* ÀàÃû³Æ£ºResource
* ÀàÃèÊö£º×ÊÔ´À࣬ÓÃÓÚ´ú±íÏ߳̾ºÕùµÄÊý¾Ý×ÊÔ´
* ´´½¨ÈË£ºDefonds
* ´´½¨Ê±¼ä£º2010-1-26 ÏÂÎç02:01:16
* ÐÞ¸ÄÈË£ºDefonds
* ÐÞ¸Äʱ¼ä£º2010-1-26 ÏÂÎç02:01:16
* Ð޸ı¸×¢£º
* @version
*
*/
public class Resource {
private int value;//×ÊÔ´µÄÊôÐÔ
public int getValue() {
return value;
}
public void setValue(int value) {
this.value = value;
}
}
ËÀËøÀý×Ó£×ÊÔ´¹ÜÀíÆ÷Ô´´úÂë
package com.defonds.deadlock;
/**
*
*
*
Ïà¹ØÎĵµ£º
JavaÖе÷ÓÃC/C++Éú³ÉµÄDLL
Ò»¡¢ Éú³ÉCµÄÍ·Îļþ
¡¡¡¡1. ±à¼Main.java
¡¡public class Main
¡¡¡¡{
¡¡¡¡public native static int getStrNum(byte str[], int strLen);
¡¡¡¡}
¡¡¡¡2. Éú³ÉÍ·Îļþ
¡¡¡¡°´win + r´ò¿ª“ÔËÐД´°¿Ú£¬ÊäÈë“cmd”£¬´ò¿ª ......
JAVAÏà¹Ø»ù´¡ÖªÊ¶
1¡¢ÃæÏò¶ÔÏóµÄÌØÕ÷ÓÐÄÄЩ·½Ãæ
1.³éÏó£º
³éÏó¾ÍÊǺöÂÔÒ»¸öÖ÷ÌâÖÐÓ뵱ǰĿ±êÎ޹صÄÄÇЩ·½Ã棬ÒÔ±ã¸ü³ä·ÖµØ×¢ÒâÓ뵱ǰĿ±êÓйصķ½Ãæ¡£³éÏó²¢²»´òËãÁ˽âÈ«²¿ÎÊÌ⣬¶øÖ»ÊÇÑ¡ÔñÆäÖеÄÒ»²¿·Ö£¬ÔÝʱ²»Óò¿·Öϸ½Ú¡£³éÏó°üÀ¨Á½¸ö·½Ã棬һÊǹý³Ì³éÏ󣬶þÊÇÊý¾Ý³éÏó¡£
2.¼Ì³Ð£º
¼Ì³ÐÊÇÒ»ÖÖÁª½áÀàµÄ²ã´ÎÄ£ÐÍ£¬²¢ ......
import java.util.Random;
import java.util.Timer;
import java.util.TimerTask;
/**
* JavaÈçºÎÿ5ÃëÉú³ÉÒ»¸öËæ»úÊý
*
* @author JavaÈË(java2000.net)
*/&nbs ......
java´úÀíģʽ¼°¶¯Ì¬´úÀíÀà ÊÕ²Ø
¶Ô´úÀíģʽÓëJava¶¯Ì¬´úÀíÀàµÄÀí½â
1. ´úÀíģʽ
´úÀíģʽµÄ×÷ÓÃÊÇ£ºÎªÆäËû¶ÔÏóÌṩһÖÖ´úÀíÒÔ¿ØÖƶÔÕâ¸ö¶ÔÏóµÄ·ÃÎÊ¡£ÔÚijЩÇé¿öÏ£¬Ò»¸ö¿Í»§²»Ïë»òÕß²»ÄÜÖ±½ÓÒýÓÃÁíÒ»¸ö¶ÔÏ󣬶ø´úÀí¶ÔÏó¿ÉÒÔÔÚ¿Í»§¶ËºÍÄ¿±ê¶ÔÏóÖ®¼äÆðµ½ÖнéµÄ×÷Óá£
´úÀ ......
´´½¨ÐÍģʽ
1¡¢FACTORY——×·MMÉÙ²»ÁËÇë³Ô·¹ÁË£¬Âóµ±À͵ļ¦³áºÍ¿ÏµÂ»ùµÄ¼¦³á¶¼ÊÇMM°®³ÔµÄ¶«Î÷£¬ËäÈ»¿ÚζÓÐËù²»Í¬£¬µ«²»¹ÜÄã´øMMÈ¥Âóµ±ÀÍ»ò¿ÏµÂ»ù£¬Ö»¹ÜÏò·þÎñԱ˵“À´Ëĸö¼¦³á”¾ÍÐÐÁË¡£Âóµ±ÀͺͿϵ»ù¾ÍÊÇÉú²ú¼¦³áµÄFactory
¹¤³§Ä£Ê½£º¿Í»§ÀàºÍ¹¤³§Àà·Ö¿ª¡£Ïû·ÑÕßÈκÎʱºòÐèҪijÖÖ²úÆ·£¬Ö»ÐèÏò¹ ......