JavaÖеÄsynchronized¹Ø¼ü×Ö
×ªÔØ×Ô http://www.cn-java.com/www1/?action-viewnews-itemid-8283
ÓÉÓÚͬһ½ø³ÌµÄ¶à¸öÏ̹߳²ÏíͬһƬ´æ´¢¿Õ¼ä£¬ÔÚ´øÀ´·½±ãµÄͬʱ£¬Ò²´øÀ´ÁË·ÃÎʳåÍ»Õâ¸öÑÏÖØµÄÎÊÌâ¡£JavaÓïÑÔÌṩÁËרÃÅ»úÖÆÒÔ½â¾öÕâÖÖ³åÍ»£¬ÓÐЧ±ÜÃâÁËͬһ¸öÊý¾Ý¶ÔÏó±»¶à¸öÏß³Ìͬʱ·ÃÎÊ¡£
¡¡¡¡ÐèÒªÃ÷È·µÄ¼¸¸öÎÊÌ⣺
¡¡¡¡1)synchronized¹Ø¼ü×Ö¿ÉÒÔ×÷Ϊº¯ÊýµÄÐÞÊηû£¬Ò²¿É×÷Ϊº¯ÊýÄÚµÄÓï¾ä£¬Ò²¾ÍÊÇÆ½Ê±ËµµÄͬ²½·½·¨ºÍͬ²½Óï¾ä¿é¡£Èç¹ûÔÙϸµÄ·ÖÀ࣬synchronized¿É×÷ÓÃÓÚinstance±äÁ¿¡¢object reference(¶ÔÏóÒýÓÃ)¡¢staticº¯ÊýºÍclass literals(ÀàÃû³Æ×ÖÃæ³£Á¿)ÉíÉÏ¡£
¡¡¡¡2)ÎÞÂÛsynchronized¹Ø¼ü×Ö¼ÓÔÚ·½·¨ÉÏ»¹ÊǶÔÏóÉÏ£¬ËüÈ¡µÃµÄËø¶¼ÊǶÔÏ󣬶ø²»ÊǰÑÒ»¶Î´úÂë»òº¯Êýµ±×÷Ëø¨D¨D¶øÇÒͬ²½·½·¨ºÜ¿ÉÄÜ»¹»á±»ÆäËûÏ̵߳ĶÔÏó·ÃÎÊ¡£
¡¡¡¡3)ÿ¸ö¶ÔÏóÖ»ÓÐÒ»¸öËø(lock)ÓëÖ®Ïà¹ØÁª¡£
¡¡¡¡4)ʵÏÖͬ²½ÊÇÒªºÜ´óµÄϵͳ¿ªÏú×÷Ϊ´ú¼ÛµÄ£¬ÉõÖÁ¿ÉÄÜÔì³ÉËÀËø£¬ËùÒÔ¾¡Á¿±ÜÃâÎÞνµÄͬ²½¿ØÖÆ¡£
¡¡¡¡1¡¢synchronized¹Ø¼ü×ÖµÄ×÷ÓÃÓòÓжþÖÖ£º
¡¡¡¡1)ÊÇij¸ö¶ÔÏóʵÀýÄÚ£¬synchronized aMethod(){}¿ÉÒÔ·ÀÖ¹¶à¸öÏß³Ìͬʱ·ÃÎÊÕâ¸ö¶ÔÏóµÄsynchronized·½·¨(Èç¹ûÒ»¸ö¶ÔÏóÓжà¸ösynchronized·½·¨£¬Ö»ÒªÒ»¸öÏ̷߳ÃÎÊÁËÆäÖеÄÒ»¸ösynchronized·½·¨£¬ÆäËüÏ̲߳»ÄÜͬʱ·ÃÎÊÕâ¸ö¶ÔÏóÖÐÈκÎÒ»¸ösynchronized·½·¨)¡£Õâʱ£¬²»Í¬µÄ¶ÔÏóʵÀýµÄ synchronized·½·¨ÊDz»Ïà¸ÉÈŵġ£Ò²¾ÍÊÇ˵£¬ÆäËüÏß³ÌÕÕÑù¿ÉÒÔͬʱ·ÃÎÊÏàͬÀàµÄÁíÒ»¸ö¶ÔÏóʵÀýÖеÄsynchronized·½·¨;
¡¡¡¡2)ÊÇij¸öÀàµÄ·¶Î§£¬synchronized static aStaticMethod{}·ÀÖ¹¶à¸öÏß³Ìͬʱ·ÃÎÊÕâ¸öÀàÖеÄsynchronized static ·½·¨¡£Ëü¿ÉÒÔ¶ÔÀàµÄËùÓжÔÏóʵÀýÆð×÷Óá£
¡¡¡¡synchronized ·½·¨¿ØÖƶÔÀà³ÉÔ±±äÁ¿µÄ·ÃÎÊ£ºÃ¿¸öÀàʵÀý¶ÔÓ¦Ò»°ÑËø£¬Ã¿¸ö synchronized ·½·¨¶¼±ØÐë»ñµÃµ÷Óø÷½·¨µÄÀàʵÀýµÄËø·½ÄÜÖ´ÐУ¬·ñÔòËùÊôÏß³Ì×èÈû£¬·½·¨Ò»µ©Ö´ÐУ¬¾Í¶ÀÕ¼¸ÃËø£¬Ö±µ½´Ó¸Ã·½·¨·µ»ØÊ±²Å½«ËøÊÍ·Å£¬´Ëºó±»×èÈûµÄÏ̷߳½ÄÜ»ñµÃ¸ÃËø£¬ÖØÐ½øÈë¿ÉÖ´ÐÐ״̬¡£ÕâÖÖ»úÖÆÈ·±£ÁËͬһʱ¿Ì¶ÔÓÚÿһ¸öÀàʵÀý£¬ÆäËùÓÐÉùÃ÷Ϊ synchronized µÄ³ÉÔ±º¯ÊýÖÐÖÁ¶àÖ»ÓÐÒ»¸ö´¦ÓÚ¿ÉÖ´ÐÐ״̬(ÒòΪÖÁ¶àÖ»ÓÐÒ»¸öÄܹ»»ñµÃ¸ÃÀàʵÀý¶ÔÓ¦µÄËø)£¬´Ó¶øÓÐЧ±ÜÃâÁËÀà³ÉÔ±±äÁ¿µÄ·ÃÎʳåÍ»(Ö»ÒªËùÓпÉÄÜ·ÃÎÊÀà³ÉÔ±±äÁ¿µÄ·½·¨¾ù±»ÉùÃ÷Ϊ synchronized)¡£
¡¡¡¡ÔÚ Java ÖУ¬²»¹âÊÇÀàʵÀý£¬Ã¿Ò»¸öÀàÒ²¶ÔÓ¦Ò»°ÑËø£¬ÕâÑùÎÒÃÇÒ²¿É½«ÀàµÄ¾²Ì¬³ÉÔ±º¯ÊýÉùÃ÷Ϊ synchronized £¬ÒÔ¿ØÖÆÆä¶ÔÀàµÄ¾²Ì¬³ÉÔ±±äÁ¿µÄ·ÃÎÊ¡£
¡¡¡¡synchronized ·
Ïà¹ØÎĵµ£º
ÕæÕý·¢ÏÖÈËÉúÐèҪ֪ʶµÄʱºò£¬ÎÒµÄÇà´ºÒѾÀË·ÑÁËÒ»°ë¡£
ÓÚÊÇ¹ÄÆðÓÂÆøÀ´µ½±±´óÇàÄñѧϰIT£¬¼øÓÚ¶à·½¿¼ÂÇ£¬»¹ÊÇÑ¡ÔñÁËÈí¼þ²âÊÔ¡£
Èç½ñ¿ÎÒµµÄÒ»´ó°ëÒ²ÒѽáÊø£¬´Ó¸Õ¿ªÊ¼µÄÒ»ÎÞËùÖª£¬½¥½¥³É³¤ÎªÒ»¸ö²ËÄñ……
Ôڿγ̵Äѧϰ¹ý³ÌÖУ¬²Å½¥½¥·¢ÏÖ×Ô¼º¶ÔÓÚÕâ¸öÐÐÒµµÄÐËȤ£¬ÓÈÆäÊÇÈí¼þ¿ª·¢ÕâÒ»¿é¡£
ÉõÖÁ¶Ô×Ô¼ºÑ¡Ôñ×ö²â ......
Êý¾Ý¿â²¿·Ö:
1.¾ÙÀý˵Ã÷Dynamic SQLµÄÔÀí¼°Ó¦Óã¿
2.¾ÙÀý˵Ã÷Êý¾Ý¿âË÷ÒýµÄÓÅȱµã£¿
3.Èç¹ûÓÉÄãÀ´Éè¼ÆÊý¾ÝµÄrollback,ÄãµÄ˼·ºÍ·½°¸£¿
4.¼ÙÉèÓÐÒ»¸ötable£¬ÃûΪpages£¬ÓÐËĸö×Ö¶Î,id ,url,title,body¡£ÀïÃæ´¢Á˺ܶàÍøÒ³£¬ÍøÒ³µÄurlµØÖ·£¬titleºÍÍøÒ³ÄÚÈÝ£¬ÓÃÒ»¸ö
sql²éѯ½«urlÆ¥ÅäµÄÅÅÔÚ×îÇ°Ãæ£¬titleÆ¥ÅäµÄÔÚÆä´Î£¬b ......
ż¶ûÔÚÍøÉÏ·¢ÏÖµÄһƬ¹ØÓÚÕÆÎÕJAVAµÄ±ê×¼£¬¸Ð¾õÓеãÒâ˼£¬ËäÈ»ÔÚһЩ¹ÛµãÉÏÓÐЩƫÆÄ£¬µ«×÷ΪѧϰJAVAµÄÒýµ¼Éпɡ£ÖÁÓÚÔ´´ÊÇËûÓбØÒª¿¼Ö¤¡£
ʱ³£¿´µ½Ò»Ð©ÈËËµÕÆÎÕÁËJava£¬µ«ÊÇÈÃËûÃÇÓÃJava×öÒ»¸öʵ¼ÊµÄÏîÄ¿¿ÉÄÜÓÖÀ§ÄÑÖØÖØ£¬ÔÚÕâÀ±ÊÕ߸ù¾Ý×Ô¼ºµÄÒ»µãÀí½â¶·µ¨Ìá³ö×Ô¼ºµÄһЩ¶ÔÕÆÎÕJavaÕâ¸ö˵·¨µÄ±ê×¼£¬µ±È»¶ÔÓÚР......
¿ª·¢»·¾³ eclipse3.2 £¨Ã»ÓÐÅäÖû·¾³ Çë²Î¿´ÉÏһƪÈÕÖ¾£©
н¨ÏîÄ¿£º
UserCover£¨Ãû³ÆËæ±ã£© ×ö¸ö¼òµ¥µÄ±¨µÀ²¢¼Ç¼µ÷ÓÃserverµÄusername
н¨°ü£ºcom.axis2.test
н¨½Ó¿Ú£º
package com.axis2.test;
public interface UserCover {
public void CoverName(String myname);
public String getUserList ......