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

java ¶àÏß³ÌÖ® wait(),notify(),notifyAll()

http://www.cnblogs.com/anran_guojianjun/archive/2009/04/14/1435278.html
wait(),notify(),notifyAll()²»ÊôÓÚThreadÀà,¶øÊÇÊôÓÚObject»ù´¡Àà,Ò²¾ÍÊÇ˵ÿ¸ö¶ÔÏñ¶¼ÓÐ
wait(),notify(),notifyAll()
µÄ¹¦ÄÜ.ÒòΪ¶¼¸ö¶ÔÏñ¶¼ÓÐËø,ËøÊÇÿ¸ö¶ÔÏñµÄ»ù´¡,µ±È»²Ù×÷ËøµÄ·½·¨Ò²ÊÇ×î»ù´¡ÁË.
ÏÈ¿´java docÔõô˵:
 waitµ¼Öµ±Ç°µÄÏ̵߳ȴý£¬Ö±µ½ÆäËûÏ̵߳÷Óô˶ÔÏóµÄ notify() ·½·¨»ò notifyAll()
·½·¨¡£µ±Ç°µÄÏ̱߳ØÐëÓµÓд˶ÔÏó¼àÊÓÆ÷¡£¸ÃÏ̷߳¢²¼¶Ô´Ë¼àÊÓÆ÷µÄËùÓÐȨ²¢µÈ´ý£¬Ö±µ½ÆäËûÏß³Ìͨ¹ýµ÷Óà notify ·½·¨£¬»ò notifyAll
·½·¨Í¨ÖªÔڴ˶ÔÏóµÄ¼àÊÓÆ÷ÉϵȴýµÄÏß³ÌÐÑÀ´¡£È»ºó¸ÃÏ߳̽«µÈµ½ÖØÐ»ñµÃ¶Ô¼àÊÓÆ÷µÄËùÓÐȨºó²ÅÄܼÌÐøÖ´ÐÐ.
 notify»½ÐÑÔڴ˶ÔÏó¼àÊÓÆ÷ÉϵȴýµÄµ¥¸öÏ̡߳£Èç¹ûËùÓÐÏ̶߳¼Ôڴ˶ÔÏóÉϵȴý£¬Ôò»áÑ¡Ôñ»½ÐÑÆäÖÐÒ»¸öÏ̡߳£Ö±µ½µ±Ç°µÄÏß³Ì·ÅÆú´Ë¶ÔÏóÉϵÄËø
¶¨£¬²ÅÄܼÌÐøÖ´Ðб»»½ÐѵÄÏ̡߳£´Ë·½·¨Ö»Ó¦ÓÉ×÷Ϊ´Ë¶ÔÏó¼àÊÓÆ÷µÄËùÓÐÕßµÄÏß³ÌÀ´µ÷ÓÃ.
"µ±Ç°µÄÏ̱߳ØÐëÓµÓд˶ÔÏó¼àÊÓÆ÷"Óë"´Ë·½·¨Ö»Ó¦ÓÉ×÷Ϊ´Ë¶ÔÏó¼àÊÓÆ÷µÄËùÓÐÕßµÄÏß³ÌÀ´µ÷ÓÃ"˵Ã÷wait·½·¨Óënotify·½·¨±ØÐëÔÚͬ²½¿éÄÚÖ´
ÐÐ,¼´synchronized(objÖ®ÄÚ).
µ÷ÓöÔÏñwait·½·¨ºó,µ±Ç°Ïß³ÌÊͷŶÔÏñËø,½øÈëµÈ´ý״̬.Ö±µ½ÆäËûÏß³Ì(Ò²Ö»ÄÜÊÇÆäËûÏß³Ì)ͨ¹ýnotify ·½·¨£¬»ò
notifyAll.¸ÃÏß³ÌÖØÐ»ñµÃ¶ÔÏñËø.
¼ÌÐøÖ´ÐÐ,¼ÇµÃÏ̱߳ØÐëÖØÐ»ñµÃ¶ÔÏñËø²ÅÄܼÌÐøÖ´ÐÐ.ÒòΪsynchronized´úÂë¿éÄÚûÓÐËøÊÇ´ç²½²»ÄÜ×ßµÄ.¿´Ò»¸öºÜ¾­µäµÄÀý×Ó:
package ProductAndConsume;
import java.util.List;
public class Consume implements Runnable{
private List container = null;
private int count;
public Consume(List lst){
this.container = lst;
}
public void run() {

while(true){
synchronized (container) {
if(container.size()== 0){
try {
container.wait();//·ÅÆúËø
} catch (InterruptedException e) {
e.printStackTrace();
}
}
try {
Thread.sleep(100);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
container.remove(0);
container.notify();
System.out.println("ÎÒ³ÔÁË"+(++count)+"¸ö");
}
}

}
}
package ProductAndC


Ïà¹ØÎĵµ£º

Object Ordering java ÅÅÐò

Object Ordering
A List l may be sorted as follows.
Collections.sort(l);
If the List consists of String elements, it will be sorted into alphabetical order. If it consists of Date elements, it will be sorted into chronological order. How does this happen? String and Date both implement the Compara ......

JAVA WebServiceʵÀý

Ò»¡¢Axis°²×° 1¡¢»·¾³ J2SE SDK 1.5 or 1.6: ÎÒʹÓà 1.6 Servlet Container: ÎÒʹÓõÄTomcat 6.0
2¡¢µ½ http://ws.apache.org/Axis/ÍøÕ¾ÏÂÔØAxis°²×°°ü
3¡¢ÏÈÔÚeclipseÏÂн¨web projectΪWebServiceDemo.ÔÚTomcatµÄÅäÖÃxmlÅäÖÃÉÏ£º<Context path="/webservice" docBase="D:\workspace\WebServiceDemo\WebRoot"/>. ......

JAVAÐòÁл¯

JAVAµÄÐòÁл¯API£¬ËüÌṩÁËÒ»¸ö¿ò¼Ü£¬ÓÃÀ´½«¶ÔÏó±àÂë³ÉÒ»¸ö×Ö½ÚÁ÷£¬ÒÔ¼°´Ó×Ö½ÚÁ÷±àÂëÖÐÖØÐ¹¹½¨¶ÔÏó¡£½«Ò»¸ö¶ÔÏó±àÂë³ÉÒ»¸ö×Ö½ÚÁ÷£¬Õâ¸öÊÇÐòÁл¯¹ý³Ì£¬·´¹ýÀ´¾ÍÊÇ·¹ÐòÁл¯¡£Ò»µ©Ò»¸ö¶ÔÏó±»ÐòÁл¯ºó£¬ÔòËüµÄ±àÂë¿ÉÒÔ´ÓÒ»¸öÕýÔÚÔËÐеÄÐéÄâ»ú±»´«µÝµ½ÁíÍâÒ»¸öÐéÄâ»úÉÏ£¬»òÕß±»´æ´¢ÔÚ´ÅÅÌÉÏ£¬¹©ÒÔºó·´ÐòÁл¯Ê¹Óá£ÐòÁл¯¼¼ÊõÎªÔ ......

XULRunner with Java: JavaXPCOM Tutorial 3

6 ¼ÓÔØÒ³ÃæµÄW3C DOM·ÃÎÊ
6.1 mozdom4java¿â
  ·ÃÎÊW3C DOMÊ÷±È·ÃÎÊMozillaµÄDOMÊ÷ÒªºÃ£¬ÒòΪËüÊÇÒ»¸ö¶¯Ì¬·ÃÎÊHTMLºÍXMLµÄDOMÊ÷µÄ±ê×¼¡£ÎªÁËʵÏÖÕâ¸ö£¬ÎÒÃÇʹÓôÓMozilla
DOMµ½W3C DOMµÄjava Bridge¡£ÓÐÒ»¸ö½Ð×ömozdom4javaµÄÏîÄ¿http://mozdom4java.mozdev.org/index.html¡£
  ÏÂÔØÕâ¸ö°üºó£¬ÎÒÃǰÑjar°ü·Å ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ