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

javaÉú²úÕßÏû·ÑÕß

ÌâÄ¿£ºÇëÓöàÏß³ÌʵÏÖÒ»¸öÉú²úÕßÀàºÍÒ»¸öÏû·ÑÕßÀ࣬Éú²úÕßËæ»úÉú³É20¸ö×Ö·û£¬Ïû·ÑÕß½«×Ö·û´òÓ¡µ½¿ØÖÆÌ¨¡£
class SyncStack{ //ͬ²½¶ÑÕ»Àà
¡¡¡¡¡¡private int index = 0; //¶ÑÕ»Ö¸Õë³õʼֵΪ0
¡¡¡¡¡¡private char []buffer = new char[6]; //¶ÑÕ»ÓÐ6¸ö×Ö·ûµÄ¿Õ¼ä
¡¡¡¡¡¡public synchronized void push(char c){ //¼ÓÉÏ»¥³âËø
¡¡¡¡¡¡¡¡¡¡while(index = = buffer.length){ //¶ÑÕ»ÒÑÂú£¬²»ÄÜѹջ
¡¡¡¡¡¡¡¡¡¡try{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡this.wait(); //µÈ´ý£¬Ö±µ½ÓÐÊý¾Ý³öÕ»
¡¡¡¡¡¡¡¡¡¡¡¡¡¡}catch(InterruptedException e){}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡this.notify(); //֪ͨÆäËüḬ̈߳ÑÊý¾Ý³öÕ»
¡¡¡¡¡¡buffer[index] = c; //Êý¾ÝÈëÕ»
¡¡¡¡¡¡index++; //Ö¸ÕëÏòÉÏÒÆ¶¯
¡¡¡¡¡¡}
¡¡¡¡¡¡public synchronized char pop(){ //¼ÓÉÏ»¥³âËø
¡¡¡¡¡¡¡¡¡¡¡¡¡¡while(index ==0){ //¶ÑÕ»ÎÞÊý¾Ý£¬²»ÄܳöÕ»
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡try{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡this.wait(); //µÈ´ýÆäËüḬ̈߳ÑÊý¾ÝÈëÕ»
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}catch(InterruptedException e){}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡this.notify(); //֪ͨÆäËüÏß³ÌÈëÕ»
¡¡¡¡¡¡¡¡¡¡¡¡¡¡index- -; //Ö¸ÕëÏòÏÂÒÆ¶¯
¡¡¡¡¡¡¡¡¡¡¡¡¡¡return buffer[index]; //Êý¾Ý³öÕ»
¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡class Producer implements Runnable{ //Éú²úÕßÀà
¡¡¡¡¡¡¡¡¡¡¡¡¡¡SyncStack theStack;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡//Éú²úÕßÀàÉú³ÉµÄ×Öĸ¶¼±£´æµ½Í¬²½¶ÑÕ»ÖÐ
¡¡¡¡¡¡¡¡¡¡¡¡¡¡public Producer(SyncStack s){
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡theStack = s;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡public void run(){
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡char c;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡for(int i=0; i<20; i++){
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡c =(char)(Math.random()*26+'A');
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡//Ëæ»ú²úÉú20¸ö×Ö·û
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡theStack.push(c); //°Ñ×Ö·ûÈëÕ»
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡System.out.println("Produced: "+c); //´òÓ¡×Ö·û
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡try{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Thread.sleep((int)(Math.random()*1000));
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡/*ÿ²úÉúÒ»¸ö×Ö·ûÏ߳̾Í˯Ãß*/
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}catch(InterruptedException e){}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡


Ïà¹ØÎĵµ£º

JavaỊ̈߳º´´½¨ÓëÆô¶¯

 
SCJP5ѧϰ±Ê¼Ç
 
Ò»¡¢¶¨ÒåÏß³Ì
 
1¡¢À©Õ¹java.lang.ThreadÀà¡£
 
´ËÀàÖÐÓиörun()·½·¨£¬Ó¦¸Ã×¢ÒâÆäÓ÷¨£º
public void run
()
Èç¹û¸ÃÏß³ÌÊÇʹÓöÀÁ¢µÄ Runnable
ÔËÐжÔÏó¹¹ÔìµÄ£¬Ôòµ÷Óøà Runnable
¶ÔÏóµÄ run
·½·¨£»·ñÔò£¬¸Ã·½·¨²»Ö´ÐÐÈκβÙ×÷²¢·µ»Ø¡£
 
Thread
µÄ×ÓÀàÓ¦ ......

JavaѹËõÀà¿âµÄʹÓà 5.ÐÔÄܼì²â

¡¡¡¡inkfishÔ­´´£¬ÇëÎðÉÌÒµÐÔÖÊ×ªÔØ£¬×ªÔØÇë×¢Ã÷À´Ô´£¨http://blog.csdn.net/inkfish
£©¡£
¡¡¡¡ÔÚÑ¡ÔñѹËõ¡¢´ò°üËã·¨µÄʱºò£¬²»½ö½öҪѡÔñËã·¨£¬»¹ÐèҪѡÔñÓÃÄĸöʵÏÖÀà¿â£¬²»Í¬µÄʵÏÖÀà¿âʵÏÖЧÂʲ»Í¬£¬Ä¬ÈÏѹËõ±ÈÂʲ»Í¬¡£ÎªÁ˲âÊÔJDK¡¢Ant¡¢commons-compressÔÚĬÈÏÇé¿öϵÄЧÂÊ£¬Éè¼ÆÁËÈçϳÌÐò£º£¨À´Ô´£ºhttp://blog.c ......

JAVAѧϰ֮·

 ¡¡ ¡¡¡¡
¡¡¡¡Èí¼þ¿ª·¢Ö®Â·ÊdzäÂú¾£¼¬ÓëÌôս֮·,Ò²ÊdzäÂúÏ£Íû֮·¡£JAVAѧϰҲÊÇÈç´Ë£¬Ã»Óнݾ¶¿É×ß¡£ÃÎÏëÏñ¡¶ÌìÁú°Ë²¿¡·ÖÐÐéÖñÒ»Ñù±»ÎÞÑÂ×Óõ®õ­¹à¶¥¶øÇáËÉ»ñµÃÒ»¼××Ó¹¦Á¦£¬ÊǺܲ»ÏÖʵµÄ¡£Ã¿ÌìÑöÌì´ó½Ð"ÌìÉñ°¡£¬Çë´Í¸øÎÒÒ»±¾¿û»¨±¦µä°É"£¬Êâ²»Öª¼´Ê¹Äã»ñµÃÁË¿û»¨±¦µä£¬³ýÁËÊÜ×Ô¹¬ÆäÉíÖ®¿àÍ⣬ÄãÒ²²»Ò»¶¨³ÉµÃÁË"¶«·½² ......

javaµ÷ÓÃnative2ascii.exe

 ±¾ÎÄÀ´×ÔCSDN²©¿Í£ºhttp://blog.csdn.net/xyk0830/archive/2007/11/06/1869638.aspx
ÃüÁîÐиñʽ£º
native2ascii.exe -[options] [inputfile [outputfile]]
ÆäÖУº
¡¡¡¡-[options]±íʾÃüÁ¹Ø£¬ÓÐÁ½¸öÑ¡Ïî¿É¹©Ñ¡Ôñ£º
¡¡¡¡¡¡¡¡-reverse£ºÓÃLatin-1»òUnicode±àÂë°ÑÎļþת»»³É±¾µØ±àÂë¸ñʽ
¡¡¡¡¡¡¡¡-encoding ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ