javaÏß³Ìͬ²½ÎÊÌâ
Ò»°ã£¬ÓÐ3ÖÖʹÓÃËø½øÐÐͬ²½µÄ·½·¨
a.·½·¨Í¬²½£¬ÀýÈçpublic synchronized void xxx()...
b.¾²Ì¬·½·¨Í¬²½,ÀýÈçpublic static synchronized void xxx()...
c.³ÌÐò¿éͬ²½,ÀýÈç
...
synchronized(object oLock) //×¢Ò⣺object²»Ò»¶¨ÊǸÃÀàµÄʵÀý
{
...
}
ÔÚÓ÷¨aÖУ¬µ±Ä³Ïß³ÌÖ´Ðз½·¨xxxʱ£¬jvm»áËø¶¨¸ÃÀàµÄʵÀý£¬Ö±µ½·½·¨xxxÖ´ÐÐÍê±Ï¡£Ö´ÐÐxxxµÄ¹ý³Ì¿´¿´³ÉÊÇÕâÑùµÄ£º
*ÇëÇóµÃµ½ÀàʵÀýµÄʵÀýËø£¬¼ÙÈçÓÐÆäËûÏß³ÌÔÚÖ´ÐУ¬ÔòµÈ´ý£»
*µÃµ½ÊµÀýËø£¬Ö´ÐÐxxx£»
*Ö´ÐÐÍê±Ï£¬ÊÍ·ÅʵÀýËø£»
×¢Ò⣬Õâ¸ö¹ý³ÌÊÇjvmÍê³ÉµÄ£¬ÎÒÃÇÖ»ÐèÒª°Ñij¸ö¶ÔÏó·½·¨ÉùÃ÷Ϊsynchronized¼´¿É£¬ÊµÀýËø¿ÉÒÔÀí½âΪʵÀý±¾Éí¡£
ÔÚÓ÷¨bÖÐ,µ±Ä³Ïß³ÌÖ´Ðо²Ì¬·½·¨xxxʱ£¬Ò²ÊÇÓÐjvm¿ØÖƾ¹ýÒÔÉϵÄ3¸ö²½Ö裬Ëù²»Í¬µÄÊÇÓÉÓÚ´Ëʱ²»´æÔÚÀàʵÀý£¨¾²Ì¬·½·¨Â£¬Ëù
ÒÔÓ÷¨aÖÐʵÀýËø±»ÊµÀýµÄÀàµÄËøÈ¡´ú£¬Æäʵ¶ÔÎÒÃDZà³ÌÀ´½²£¬¼¸ºõûÓÐÈκÎÇø±ð£¬ÎÒÃÇÖ»ÐèÒª°Ñ¾²Ì¬·½·¨ÉùÃ÷Ϊsynchronized¼´¿É¡£
ÔÚÓ÷¨cÖУ¬oLock¿ÉÒÔ±»Àí½âΪһ¸ö´«½Ó°ô£¬Ëü¿ÉÒÔÊÇÈκÎÀàµÄʵÀý£¬µ±Ä³¸öÏß³ÌÊÔͼ·ÃÎÊÉùÃ÷ΪsynchronizedµÄ³ÌÐò¿éµÄʱºò£¬jvm
ÅжÏoLockÊÇ·ñ±»Ëø¶¨£¬¼ÙÈçûÓб»Ëø¶¨£¬ÔòËø¶¨oLock²¢Ö´ÐиóÌÐò¿é¡£Ö´ÐÐÍê±ÏÊͷŸÃËø¡£
ÔÚ¶ÔÏó¼¶Ê¹ÓÃËø£¨ÊµÀýËø£©Í¨³£ÊÇÒ»ÖֱȽϴֲڵķ½·¨£¬ÉèÏëһϣ¬¼ÙÈçÒ»¸ö¶ÔÏó¿ÉÄÜÈ¥·ÃÎÊN¸ö¹²Ïí×ÊÔ´£¬ÄÇô¼ÙÈçÓÐÒ»¸öÏ̶߳ÀÕ¼
Á˸öÔÏ󣬶ø½ö½öÊÇΪÁËʹÓÃÆäÖеÄÒ»Ïî×ÊÔ´µÄ»°£¬Ò²»áÔì³ÉÏë·ÃÎÊÆäËü×ÊÔ´µÄÏß³ÌÒ²´¦ÓÚ¶ÂÈû״̬¡£ÓóÌÐò¿éͬ²½¿ÉÒԺܺýâ¾öÕâ¸öÎÊÌ⣬
ÒÔÏÂÊÇʹÓñ»³ÆÎªFine_Grain_LockµÄÀý×Ó£¬¿´£¬Ð§¹ûÊDz»ÊǺÜhigh£º
Java´úÂë
class FineGrainLock {
MyMemberClass x, y;
Object xlock&
Ïà¹ØÎĵµ£º
ÏÈÀ´Á˽âÒ»ÏÂÁ´±íģʽµÄÔÀí£º
Ê×ÏÈдһ¸öJavaBean£¬ÄÚÈÝÊÇÒªÌí¼ÓµÄÔªËØºÍ¸ÃÔªËØµÄ½Úµã¡£
public class NodeBean implements Serializable
{
private Object data; //ÔªËØ±¾Éí
private NodeBean next; //ÏÂÒ»¸ö½Úµã
&n ......
ÎÄÕÂת×Ô£ºhttp://javastudy.blog.51cto.com/183528/78723
jsp¿ª·¢ÖÐµÄ ¼àÌýÆ÷ºÍ¹ýÂËÆ÷£¬ÕâÁ½¸ö¶«Î÷Ҫ˵ÆðÀ´£¬ºÜ´ó£¬ºÜ·±¡£½ñÌìÎÒÏëÓÃÒ»¸öÏÖʵµÄÀý×Ó£¬À´ËµÃ÷ÕâÁ½¸ö¶«¶«µÄ×÷Óá£
°¸ÀýÃèÊö
¼ÙÉèÄãÆ½Ê±Éú»îÔÚ±±¾©£¬ÓÐÌìÄãÈ¥Ò»¸öºÜ±ßÔ¶ºÜƶÇîµÄɽ´åÌåÑéÉú»î£¬µ½ÁËÄǸ ......
ת £º http://www.jcourse.cn/read/234
2009-03-02 ×÷Õß:
zhangtaolv
ÔÚÎÒÃÇÈÕ³£¿ª·¢ÖУ¬¾³£»áÓöµ½¶ÔÎı¾µÄ²Ù×÷£¬²¢ÇÒÔÚÒ»°ãµÄMISϵͳÖУ¬Îı¾²Ù×÷ÓÈΪ¶à£¬ÈçÓû§Ãû¡¢ÎÄÕÂÄÚÈÝ¡¢ÎÄÕ±êÌâ¡¢ºÏͬÄÚÈݵȡ£ÔÚ֮ǰµÄ½Ì³ÌÖУ¬ÎÒÒ²¸ø´ó¼Ò½²½âÁËJavaÖÐ×î»ù±¾µÄ×Ö·û´®²Ù×÷µÄÀ࣬String¡£ÔÚ֮ǰµÄ½Ì³ÌÖÐÎÒÒ²¸ø´ó¼Ò½²ÁËStr ......
import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;
public class j5_13 extends Applet implements ActionListener
{
Panel p=new Panel();//н¨²¼¾Ö
Label welcome,la1,li1,la2,li2,lresult;//Ìáʾ±êÇ©,·ûºÅ±êÇ©ÒÔ¼°¼ÆËã½á¹ûµÄ±êÇ©
TextField ta,tb,t ......