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

JAVA½ø½×£ºÒ»¸ö¼òµ¥Thread»º³å³ØµÄʵÏÖ


ÔÚÓ¦ÓÃÖУ¬ÎÒÃdz£³£ÐèÒªThread»º³å³ØÀ´×öһЩÊÂÒÔÌá¸ß³ÌÐòµÄЧÂʺͲ¢·¢ÐÔ¡£±¾ÎÄÑÝʾÁËÈçºÎÀûÓÃQueueÕâÖÖÊý¾Ý½á¹¹ÊµÏÖÒ»¸ö¼òµ¥µÄThread»º³å³Ø¡£
Ò»¸öThread»º³å³Ø¿ÉÒÔÉè¼Æ³ÉÒÔÏÂÕâÑù£º»º³å³ØÓɼ¸¸ö¹¤×÷ThreadºÍÒ»¸öQueue×é³É£¬Client¸ºÔð°ÑÈÎÎñ·Åµ½QueueÀïÃæ£¨put·½·¨£©£¬¶ø¹¤×÷Thread¾ÍÒÀ´ÎÈ¡³öÕâЩÈÎÎñ²¢Ö´ÐÐËüÃÇ£¨get·½·¨£©¡£
QueueµÄÒ»¸ö¾­µäʵÏÖÊÇʹÓÃÒ»¸öÑ­»·Êý×飨Õâ¸öʵÏÖÔںܶàÊý¾Ý½á¹¹µÄÊéÉ϶¼ÓнéÉÜ£©£¬ÈçÒ»¸ö´óСΪsizeµÄÊý×飬Õâ¸öÑ­»·Êý×é¿ÉÒÔ±»ÏëÏó³ÉÊ×βÏàÁ¬µÄÒ»¸ö»·¡£oldestÖ¸ÏòQueueÖÐ×îÀϵÄÊý¾ÝËùÔÚµÄλÖã¬nextÖ¸ÏòÏÂÒ»¸ö¿ÉÒÔ·ÅÐÂÊý¾ÝµÄλÖá£
·ÅÈëÒ»¸öÐÂÊý¾Ýµ½nextµÄλÖúó£¬ÐèÒª¸üÐÂnext£ºnext = (next + 1) % size;
´ÓoldestλÖÃÈ¡³öÒ»¸öÊý¾Ýºó£¬ÐèÒª¸üÐÂoldest£ºoldest = (oldest + 1) % size;
µ±oldest == nextµÄʱºò£¬QueueΪ¿Õ£¬
µ±(next + 1) % size == oldestµÄʱºò£¬QueueΪÂú¡£
£¨×¢Ò⣺ΪÁËÇø·ÖQueueΪ¿ÕºÍΪÂúµÄÇé¿ö£¬Êµ¼ÊÉÏQueueÀïÃæ×î¶àÄÜ·Åsize-1¸öÊý¾Ý¡££©
ÒòΪÕâ¸öQueue»áͬʱ±»¶à¸öÏ̷߳ÃÎÊ£¬ÐèÒª¿¼ÂÇÔÚÕâÖÖÇé¿öÏÂQueueÈçºÎ¹¤×÷¡£Ê×ÏÈ£¬QueueÐèÒªÊÇḬ̈߳²È«µÄ£¬¿ÉÒÔÓÃJavaÀïµÄsynchronized¹Ø¼ü×ÖÀ´È·±£Í¬Ê±Ö»ÓÐÒ»¸öThreadÔÚ·ÃÎÊQueue.
ÎÒÃÇ»¹¿ÉÒÔ×¢Òâµ½µ±QueueΪ¿ÕµÄʱºò£¬get²Ù×÷ÊÇÎÞ·¨½øÐе컵±QueueΪÂúµÄʱºò£¬put²Ù×÷ÓÖÊÇÎÞ·¨½øÐеġ£ÔÚ¶àÏ̷߳ÃÎÊÓöµ½ÕâÖÖÇé¿öʱ£¬Ò»°ãÏ£ÍûÖ´ÐвÙ×÷µÄÏ߳̿ÉÒԵȴý£¨block£©Ö±µ½¸Ã²Ù×÷¿ÉÒÔ½øÐÐÏÂÈ¥¡£±ÈÈ磬µ«Ò»¸öThreadÔÚÒ»¸ö¿ÕQueueÉÏÖ´ÐÐget·½·¨µÄʱºò£¬Õâ¸ö ThreadÓ¦µ±µÈ´ý(block)£¬Ö±µ½ÁíÍâµÄThreadÖ´ÐиÃQueueµÄput·½·¨ºó£¬ÔÙ¼ÌÐøÖ´ÐÐÏÂÈ¥¡£ÔÚJavaÀïÃæ£¬Object¶ÔÏóµÄ wait(),notify()·½·¨ÌṩÁËÕâÑùµÄ¹¦ÄÜ¡£
°ÑÉÏÃæµÄÄÚÈݽáºÏÆðÀ´£¬¾ÍÊÇÒ»¸öSyncQueueµÄÀࣺ
public class SyncQueue {
public SyncQueue(int size) {
_array = new Object[size];
_size = size;
_oldest = 0;
_next = 0;
}
public synchronized void put(Object o) {
while (full()) {
try {
wait();
} catch (InterruptedException ex) {
throw new ExceptionAdapter(ex);
}
}
_array[_next] 


Ïà¹ØÎĵµ£º

JAVAÊý¾Ý¿âÁ¬½Ó

 String uid=jTextField.getText();
 String upass=jTextField.getText();
 try {
      Class.forName("oracle.jdbc.driver.OracleDriver");//Òªµ¼ÈëÍⲿ°ü
      Connection conn=DriverManager.getConnection("jdbc:oracle:thin:scott ......

ÓÃJava½Ó¿ÚʵÏֻص÷º¯ÊýµÄµÈ¼Û¹¦ÄÜ

ÓÃJava½Ó¿ÚʵÏֻص÷º¯ÊýµÄµÈ¼Û¹¦ÄÜ
Ê×ÏÈ£¬¿´Ò»Ï»ص÷º¯ÊýµÄ¶¨Òå¼°ÆðÔ´£º
¼ò¶øÑÔÖ®£¬»Øµ÷º¯Êý¾ÍÊÇÒ»¸öͨ¹ýº¯ÊýÖ¸Õëµ÷Óõĺ¯Êý£¬Èç¹ûÄã°Ñº¯ÊýµÄÖ¸Õë(µØÖ·)×÷Ϊ²ÎÊý´«µÝ¸øÁíÒ»¸öº¯Êý£¬µ±Õâ¸öÖ¸Õë±»ÓÃΪµ÷ÓÃËüËùÖ¸ÏòµÄº¯Êýʱ£¬ÎÒÃǾÍ˵Êǻص÷º¯Êý¡£
ΪʲôҪʹÓûص÷º¯Êý£¿
ÒòΪ¿ÉÒ԰ѵ÷ÓÃÕßÓë±»µ÷ÓÃÕß·Ö¿ª¡£µ÷ÓÃÕß²»¹ØÐı» ......

Java»·¾³±äÁ¿µÄÉèÖÃ

Java
»·¾³±äÁ¿µÄÉèÖÃ
×÷Õߣº
zccst
 
ʲôÊÇ»·¾³±äÁ¿£¿
ͨË׵Ľ²£¬Äã¿ÉÒÔÀí½âΪ·¾¶µ¼Ïò£¬¼´³ÌÐòÑØ×ÅÄãÖ¸¶¨µÄ·¾¶È¥Ñ°ÕÒËùÐèÔËÐл·¾³¡£
 
Java
»·¾³±äÁ¿µÄÉèÖãº
¼ÇµÃÉÏ´óѧʱ£¬ÌýÀÏʦ½²µ½»·¾³±äÁ¿Ê±£¬¸Ð¾õºÜÐþ£¬Ò²²»ÖªµÀʲôÒâ˼¡£Êµ¼ÊÉÏ£¬ÄãÖ»ÐèҪͬʱÉèÖÃ
3
¸ö±äÁ¿¼´¿É
¾ßÌå²Ù×÷²½Ö裺" ÎÒµ ......

Java°´×Ö½Ú³¤¶È½ØÈ¡×Ö·û´®


±à³Ì£º±àдһ¸ö½ØÈ¡×Ö·û´®µÄº¯Êý£¬ÊäÈëΪһ¸ö×Ö·û´®ºÍ×Ö½ÚÊý£¬Êä³öΪ°´×Ö½Ú½ØÈ¡µÄ×Ö·û´®¡£µ«ÊÇÒª±£Ö¤ºº×Ö²»±»½Ø°ë¸ö£¬Èç"ÎÒABC"4£¬Ó¦¸Ã½ØÎª"ÎÒAB"£¬ÊäÈë"ÎÒABCººDEF"£¬6£¬Ó¦¸ÃÊä³öΪ"ÎÒABC"¶ø²»ÊÇ"ÎÒABC+ººµÄ°ë¸ö"¡£
¡¡¡¡public static String substring(String str, int toCount,String& ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ