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

javaÏß³ÌËÀËøÀý×Ó

public class DealLockTest implements Runnable {
static String i = new String();
static String j = new String();
private String str = null;
public DealLockTest(String str) {
this.str = str;
}
public static void main(String[] args) {
new Thread(new DealLockTest("i")).start();
new Thread(new DealLockTest("j")).start();
}
public void run() {
if (str.equals("i")) {
synchronized (i) {
System.out.println(Thread.currentThread().getName()+":"+"i");
Thread.yield();
synchronized (j) {
System.out.println("i is over");
}
}
} else {
synchronized (j) {
System.out.println(Thread.currentThread().getName()+":"+"j");
Thread.yield();
synchronized (i) {
System.out.println("j is over");
}
}
}
}
}

Ï̺߳Îʱ·¢ÉúËÀËøÄØ?
×î¼òµ¥µÄÇé¿öÊǵ±1¸öÏ̻߳ñµÃÁË×ÊÔ´A,µ±ËüÔÙ»ñµÃ×ÊÔ´Bʱ,¾Í¿ÉÒÔÍê³ÉÈÎÎñ.¶øÔÚËü»ñµÃÁËAµÄʱºò
ÁíÒ»¸öÏ̻߳ñµÃÁË×ÊÔ´B,È¥ÇÀ×ÊÔ´A..´Ëʱ,¾Í·¢ÉúÁËËÀËø
ǰÌá(¹²Ïí×ÊÔ´(static),¼ÓËø(synchronized)).


Ïà¹ØÎĵµ£º

ѧϰCÓëJavaµÄÀà±È

´óѧµÄʱºòÑ¡ÐÞ¹ýÒ»¸öѧÆÚÈÕÓµ±Ê±ÈÕÓïÀÏʦ¶ÔÎÒÃÇ˵£º“¶ÔÓÚÖйúÈËÀ´½²£¬Ñ§Ï°Ó¢ÓïÒ»°ãÊÇ¿Þ׎øÈ¥£¬Ð¦×ųöÀ´£»Ñ§Ï°ÈÕÓïÔòÊÇЦ׎øÈ¥£¬¿Þ×ųöÀ´”¡£Òâ˼¾ÍÊÇ˵ѧϰӢÓïµÄʱºò£¬ÈëÃŵÄʱºò±È½ÏÀ§ÄÑ£¬µ«ÊÇÖ»Òª¼á³ÖѧÏÂÈ¥£¬×ª±äÁ˺ºÓïµÄ˼άϰ¹ßʱ£¬×î½ü¿ÉÒÔ°ÑÓ¢ÓïѧµÃºÜºÃ¡£¶øÈÕÓﲻͬ£¬Ò»·½ÃæÒòΪÆäÓ뺺ÓïµÄ½ôÃÜ¹Ø ......

µ¶Ê¯Í·²¼ÓÎÏ· java°æ

import java.util.Scanner;
public class Game{
  void welcome(){
   println("»¶Ó­À´µ½¼ôµ¶Ê¯Í·²¼ÓÎÏ·");
  }
 Choice getUserChoice(){
  println("ÇëÑ¡Ôñ\t[1]¼ôµ¶\t[2]ʯͷ\t[3]²¼");
  Scanner sc= new Scanner(System.in);
  int userCh ......

java¸´ÖÆ£¬¼ôÇУ¬É¾³ýÎļþ²Ù×÷

package OALogic.sql.data;
import java.io.*;
public class FileOperate {
   public FileOperate() {
   }
  
   public static void main(String args[]){
       newFolder("D:/100");
   }
   /**
  ......

KMPËã·¨µÄJavaʵÏÖÀý×ÓÒÔ¼°²âÊÔ·ÖÎö


±³¾°¼ò½é£ºKMPËã·¨ÓÃÀ´´¦Àí×Ö·û´®Æ¥ÅäµÄ¡£¸øÄãA,BÁ½¸ö×Ö·û´®£¬¼ì²éB´®ÊÇ·ñÊÇA´®µÄ×Ó´®£¬ÀàËÆÓÚJavaµÄString.indexOf("")¡£Ö®ËùÒÔ½Ð×öKMP£¬ÊÇÒòΪÕâ¸öËã·¨ÊÇÓÉKnuth¡¢Morris¡¢PrattÈý¸öÌá³öÀ´µÄ£¬È¡ÁËÕâÈý¸öÈ˵ÄÃû×ÖµÄÍ·Ò»¸ö×Öĸ¡£
Ô­Àí½éÉÜ£ºÕÒµ½Æ¥Åäʧ°ÜʱµÄ×îºÏÊʵĻØÍËλÖ㬶ø²»ÊǼòµ¥µÄ»ØÍ˵½×Ó´®µÄµÚÒ»¸ö×Ö·û£¨³£¹ ......

Java¶àÏ̱߳à³ÌÖеÄSynchronized

Synchronized£¬¹ËÃû˼Ò壬´ú±í¶à¸öÏß³ÌÖ®¼äµÄͬ²½¡£ÄÇô£¬ÔÚjava±à³ÌÖÐÈçºÎʹÓÃËüÄØ£¿ ÎÒÃǼÙÉèÕâÑùÒ»¸öÇé¿ö£º¶ÔÓÚͬһ¸ö±äÁ¿synDemo£¬ÎÒÃÇ·Ö±ðÔÚ2¸ö²»Í¬µÄÏß³ÌÖе÷ÓÃsynDemo.synMethord1()ÓësynDemo.synMethord2()¡£ package com.cnblogs.gpcuster;
/**
*
* @author Aaron.Guo
*
*/
public class Tester { ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ