Ò׽ؽØͼÈí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

Java¿ª·¢ÖжàÏß³Ìͬ²½¼¼ÇÉ

ÔÚ±àдһ¸öÀàʱ£¬Èç¹û¸ÃÀàÖеĴúÂë¿ÉÄÜÔËÐÐÓÚ¶àÏ̻߳·¾³Ï£¬ÄÇô¾ÍÒª¿¼ÂÇͬ²½µÄÎÊÌâ¡£ÔÚJavaÖÐÄÚÖÃÁËÓïÑÔ¼¶µÄͬ²½Ô­Ó£­synchronized£¬ÕâÒ²´ó´ó¼ò»¯ÁËJavaÖжàÏß³Ìͬ²½µÄʹÓá£
 ÎÒÃÇÊ×Ïȱàдһ¸ö·Ç³£¼òµ¥µÄ¶àÏ̵߳ijÌÐò£¬ÊÇÄ£ÄâÒøÐÐÖеĶà¸öÏß³Ìͬʱ¶Ôͬһ¸ö´¢ÐîÕË»§½øÐдæ¿î¡¢È¡¿î²Ù×÷µÄ¡£
¡¡¡¡ÔÚ³ÌÐòÖÐÎÒÃÇʹÓÃÁËÒ»¸ö¼ò»¯°æ±¾µÄAccountÀ࣬´ú±íÁËÒ»¸öÒøÐÐÕË»§µÄÐÅÏ¢¡£ÔÚÖ÷³ÌÐòÖÐÎÒÃÇÊ×ÏÈÉú³ÉÁË1000¸öỊ̈߳¬È»ºóÆô¶¯ËüÃÇ£¬Ã¿Ò»¸öÏ̶߳¼¶ÔJohnµÄÕË»§½øÐдæ100Ôª£¬È»ºóÂíÉÏÓÖÈ¡³ö100Ôª¡£ÕâÑù£¬¶ÔÓÚJohnµÄÕË»§À´Ëµ£¬×îÖÕÕË»§µÄÓà¶îÓ¦¸ÃÊÇ»¹ÊÇ1000Ôª²Å¶Ô¡£È»¶øÔËÐеĽá¹ûÈ´³¬³öÎÒÃǵÄÏëÏñ£¬Ê×ÏÈÀ´¿´¿´ÎÒÃǵÄÑÝʾ´úÂ룺
class Account
{
¡¡String name; float amount;
¡¡public Account(String name, float amount)
¡¡{
¡¡¡¡this.name = name;
¡¡¡¡this.amount = amount;
¡¡}
¡¡
¡¡public void deposit(float amt)
¡¡{
¡¡¡¡float tmp = amount;
¡¡¡¡tmp += amt;
¡¡¡¡try
¡¡¡¡{
¡¡¡¡¡¡Thread.sleep(100);
¡¡¡¡¡¡//Ä£ÄâÆäËü´¦ÀíËùÐèÒªµÄʱ¼ä£¬±ÈÈçË¢ÐÂÊý¾Ý¿âµÈ
¡¡¡¡}
¡¡¡¡catch (InterruptedException e)
¡¡¡¡{
¡¡¡¡¡¡// ignore
¡¡¡¡}
¡¡¡¡amount = tmp;
¡¡}
¡¡public void withdraw(float amt)
¡¡{
¡¡¡¡float tmp = amount;
¡¡¡¡tmp -= amt;
¡¡¡¡try
¡¡¡¡{
¡¡¡¡¡¡Thread.sleep(100);
¡¡¡¡¡¡//Ä£ÄâÆäËü´¦ÀíËùÐèÒªµÄʱ¼ä£¬±ÈÈçË¢ÐÂÊý¾Ý¿âµÈ
¡¡¡¡}
¡¡¡¡catch (InterruptedException e)
¡¡¡¡{
¡¡¡¡¡¡// ignore
¡¡¡¡}
¡¡¡¡amount = tmp;
¡¡}
¡¡public float getBalance()
¡¡{
¡¡¡¡return amount;
¡¡ }
}
public class AccountTest
{
¡¡private static int NUM_OF_THREAD = 1000;
¡¡static Thread[] threads = new Thread[NUM_OF_THREAD];
¡¡public static void main(String[] args)
¡¡{
¡¡¡¡final Account acc = new Account("John", 1000.0f);
¡¡¡¡for (int i = 0; i< NUM_OF_THREAD; i++)
¡¡¡¡{
¡¡¡¡¡¡threads[i] = new Thread(new Runnable()
¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡public void run()
¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡acc.deposit(100.0f);
¡¡¡¡¡¡¡¡¡¡acc.withdraw(100.0f);
¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡}
¡¡¡¡ );
¡¡¡¡threads[i].start();
¡¡}
¡¡for (int i=0; i<NUM_OF_THREAD; i++)
¡¡{
¡¡¡¡try { threads[i].join();
¡¡¡¡//µÈ´ýËùÓÐÏß³ÌÔËÐнáÊø
¡¡}
¡¡catch (InterruptedEx


Ïà¹ØÎĵµ£º

JavaµÄͬ²½»úÖƺÍsynchronized¹Ø¼ü×Ö

¿ª·¢ÕßÓÐʱ´´½¨µÄ¶àÏ̳߳ÌÐò»áÉú³É´íÎóÖµ»ò²úÉúÆäËüÆæ¹ÖµÄÐÐΪ¡£¹Å¹ÖÐÐΪһ°ã³öÏÖÔÚÒ»¸ö¶àÏ̳߳ÌÐòûʹÓÃͬ²½Á¬ÔØÏ̷߳ÃÎʹؼü´úÂ벿·ÝµÄʱºò¡£Í¬²½Á¬ÔØÏ̷߳ÃÎʹؼü´úÂ벿·ÝÊÇʲôÒâ˼ÄØ£¿ÔÚÕâƪÎÄÕÂÖнâÊÍÁËͬ²½£¬JavaµÄͬ²½»úÖÆ£¬ÒÔ¼°µ±¿ª·¢ÕßûÓÐÕýȷʹÓÃÕâ¸ö»úÖÆʱ³öÏÖµÄÁ½¸öÎÊÌâ¡£Ò»µ©Äã¿´ÍêÕâƪÎÄÕ£¬Äã¾Í¿ÉÒÔ±ÜÃâÔÚ ......

ÈçºÎÓÃJavaƽ̨·ÃÎÊ¿ªÔ´ÔÆ´æ´¢£¿


ÈçºÎÓÃJavaƽ̨·ÃÎÊ¿ªÔ´ÔÆ´æ´¢£¿
2009Äê10Ô                     ×÷Õߣº¼òÖñ/Òë 
¾¡¹ÜÔƼÆËãÕâÒ»ÊõÓï²¢²»ÐÂÏÊ(AmazonÔÚ2006Äê¾Í¿ªÊ¼ÌṩËüµÄÔÆ·þÎñ)£¬µ«´Ó2008ÄêÆðËü²Å¿ªÊ¼ÕæÕý³ÉΪÁ÷Ðдʣ¬ÕâÆڼ䣬GoogleºÍAma ......

Ç°ÎÀ¼¼Êõ ¡¶Ä§ÊÞÍâ´«¡·È«ÐÂJAVAÒýÇæ


Ç°ÎÀ¼¼Êõ ¡¶Ä§ÊÞÍâ´«¡·È«ÐÂJAVAÒýÇæ
¡¶Ä§ÊÞÍâ´«¡·ÊÇÓÉÏã³ÈÍøÂçÊ×´ÎÍ»ÆÆFLASHÒýÇæÏÞÖÆ£¬²ÉÓÃJAVAÒýÇæ×ÔÖ÷Ñз¢µÄ¶¯Ì¬Õ½¶·²ßÂÔÀàÓÎÏ·¡£ËùνJava¾ÍÊÇÒ»ÖÖ¼òµ¥µÄ£¬ÃæÏò¶ÔÏóµÄ£¬½¡×³°²È«µÄ£¬½á¹¹ÖÐÁ¢µÄ£¬ÐÔÄÜÓÅÒì¡¢¶àÏ̵߳Ķ¯Ì¬ÓïÑÔ¡£ËüµÄÓï·¨ÓëCÓïÑÔºÍC++ÓïÑԺܽӽü£¬µ«ÊDZ÷ÆúÁËC++ÖкÜÉÙʹÓõġ¢ºÜÄÑÀí½âµÄ¡¢ÁîÈËÃÔ»óµÄÄÇÐ©Ì ......

dz̸Java´úÀí»úÖÆ

¿ÉÒÔ˵´úÀíÊÇjavaÊ®·ÖÖØÒªµÄÒ»ÖÖ»úÖÆ£¬ÁíÒ»¸öµ±È»ÊÇÊôÓÚ·´ÉäÁË£¬jdkÖе¥¶À½²µ½ÁË·´ÉäAPI£¨java.lang.reflect£©£¬¿ÉÄÜÓÐÈËÈÏΪ·´Éä¶Ô×ÊÔ´ÏûºÄ±È½ÏÀ÷º¦£¬È·ÊµÒ²ÊÇ£¬·´Éä¿Ï¶¨ÊÇÒªÏûºÄ×ÊÔ´µÄ£¬µ«Ò²²»ÊÇʲô¶¼ÒªÓõ½·´É䣬ËùÒÔ×î¼ÑÊÔÑéÓ¦¸ÃÊÇÔÚ×ÊÔ´ÏûºÄ³Ì¶ÈºÍ·´ÉäµÄʹÓó̶ÈÖ®¼äÕÒµ½Ò»¸öƽºâµã£¬±¾ÎIJ¢²»´òËã½²·´É䣬¹ØÓÚ·´ÉäµÄÐ ......

Java¶àÏ̱߳à³Ì¾­Ñé

²»¹ÜÎÒÊǶàôϲ»¶JAVAµ«ÊÇ£¬´Óʵ¼Ê¿ª·¢½Ç¶È½²£¬JavaµÄ¶àÏß³ÌȷʵûÓÐC++ºÃʹ¡£
±íÏÖÔÚ£º
1.JavaûÓÐÈ«¾Ö±äÁ¿£»
2.Java µÄÏß³ÌÖ®¼äµÄͨÐűȽϲC++ÌṩÁ˶àÖÖͨÐÅ·½Ê½£»
3.JavaµÄÊý¾Ýͬ²½ÊÇͨ¹ýsynchronizedÀ´ÊµÏÖ£¬µ«ÊÇ»ù±¾ÉϵÈÓÚ½»¸øÁËÐéÄâ»úÀ´Íê³É£¬¶øC++ÓкܶàÖÖ£ºÁÙ½çÇø¡¢»¥³âÌåµÈ¡£
4. JavaµÄ¶àÏß³Ìrun·½· ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ