JavaỊ̈߳ºÐÂÌØÕ÷ Ìõ¼þ±äÁ¿
JavaỊ̈߳ºÐÂÌØÕ÷-Ìõ¼þ±äÁ¿
Ìõ¼þ±äÁ¿ÊÇJava5Ïß³ÌÖкÜÖØÒªµÄÒ»¸ö¸ÅÄ¹ËÃû˼Ò壬Ìõ¼þ±äÁ¿¾ÍÊDZíʾÌõ¼þµÄÒ»ÖÖ±äÁ¿¡£µ«ÊDZØÐë˵Ã÷£¬ÕâÀïµÄÌõ¼þÊÇûÓÐʵ¼Êº¬ÒåµÄ£¬½ö½öÊǸö±ê¼Ç¶øÒÑ£¬²¢ÇÒÌõ¼þµÄº¬ÒåÍùÍùͨ¹ý´úÂëÀ´¸³ÓèÆäº¬Òå¡£
ÕâÀïµÄÌõ¼þºÍÆÕͨÒâÒåÉϵÄÌõ¼þ±í´ïʽÓÐ×ÅÌìÈÀÖ®±ð¡£
Ìõ¼þ±äÁ¿¶¼ÊµÏÖÁËjava.util.concurrent.locks.Condition½Ó¿Ú£¬Ìõ¼þ±äÁ¿µÄʵÀý»¯ÊÇͨ¹ýÒ»¸öLock¶ÔÏóÉϵ÷ÓÃnewCondition()·½·¨À´»ñÈ¡µÄ£¬ÕâÑù£¬Ìõ¼þ¾ÍºÍÒ»¸öËø¶ÔÏó°ó¶¨ÆðÀ´ÁË¡£Òò´Ë£¬JavaÖеÄÌõ¼þ±äÁ¿Ö»ÄܺÍËøÅäºÏʹÓã¬À´¿ØÖƲ¢·¢³ÌÐò·ÃÎʾºÕù×ÊÔ´µÄ°²È«¡£
Ìõ¼þ±äÁ¿µÄ³öÏÖÊÇΪÁ˸ü¾«Ï¸¿ØÖÆÏ̵߳ȴýÓ뻽ÐÑ£¬ÔÚJava5֮ǰ£¬Ï̵߳ĵȴýÓ뻽ÐÑÒÀ¿¿µÄÊÇObject¶ÔÏóµÄwait()ºÍnotify()/notifyAll()·½·¨£¬ÕâÑùµÄ´¦Àí²»¹»¾«Ï¸¡£
¶øÔÚJava5ÖУ¬Ò»¸öËø¿ÉÒÔÓжà¸öÌõ¼þ£¬Ã¿¸öÌõ¼þÉÏ¿ÉÒÔÓжà¸öÏ̵߳ȴý£¬Í¨¹ýµ÷ÓÃawait()·½·¨£¬¿ÉÒÔÈÃÏß³ÌÔÚ¸ÃÌõ¼þϵȴý¡£µ±µ÷ÓÃsignalAll()·½·¨£¬ÓÖ¿ÉÒÔ»½ÐѸÃÌõ¼þϵĵȴýµÄÏ̡߳£ÓйØCondition½Ó¿ÚµÄAPI¿ÉÒÔ¾ßÌå²Î¿¼JavaAPIÎĵµ¡£
Ìõ¼þ±äÁ¿±È½Ï³éÏó£¬ÔÒòÊÇËû²»ÊÇ×ÔÈ»ÓïÑÔÖеÄÌõ¼þ¸ÅÄ¶øÊdzÌÐò¿ØÖƵÄÒ»ÖÖÊֶΡ£
ÏÂÃæÒÔÒ»¸öÒøÐдæÈ¡¿îµÄÄ£Äâ³ÌÐòΪÀýÀ´½Ò¸ÇJava¶àÏß³ÌÌõ¼þ±äÁ¿µÄÉñÃØÃæÉ´£º
ÓÐÒ»¸öÕË»§£¬¶à¸öÓû§£¨Ị̈߳©ÔÚͬʱ²Ù×÷Õâ¸öÕË»§£¬ÓеĴæ¿îÓеÄÈ¡¿î£¬´æ¿îËæ±ã´æ£¬È¡¿îÓÐÏÞÖÆ£¬²»ÄÜ͸֧£¬ÈκÎÊÔͼ͸֧µÄ²Ù×÷¶¼½«µÈ´ýÀïÃæÓÐ×ã¹»´æ¿î²ÅÖ´ÐвÙ×÷¡£
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.locks.Condition;
import java.util.concurrent.locks.Lock;
import java.util.concurrent.locks.ReentrantLock;
/**
* JavaỊ̈߳ºÌõ¼þ±äÁ¿
*
* @author leizhimin 2009-11-5 10:57:29
*/
public class Test {
public static void main(String[] args) {
//´´½¨²¢·¢·ÃÎʵÄÕË»§
MyCount myCount = new MyCount("95599200901215522", 10000);
&nb
Ïà¹ØÎĵµ£º
1. Java¶ÁÈ¡Excel·½Ê½¶Ô±È
ÔÚJavaÖжÁдMS ExcelÎļþÖ÷ÒªÓÐÁ½ÖÖµäÐ͵ķ½·¨
l Java-To-ComµÄ·½Ê½£º
£¨£±£© jCom
£¨£²£© Jacob
l Ö±½ÓExcelÎļþ¶Áд
£¨£³£© jExcel
£¨£´£©&nbs ......
JavaỊ̈߳ºÏß³Ì״̬µÄת»»
SCJP5ѧϰ±Ê¼Ç
Ò»¡¢Ïß³Ì״̬
Ï̵߳Ä״̬ת»»ÊÇÏ߳̿ØÖƵĻù´¡¡£Ïß³Ì״̬×ܵĿɷÖΪÎå´ó״̬£º·Ö±ðÊÇÉú¡¢ËÀ¡¢¿ÉÔËÐС¢ÔËÐС¢µÈ´ý/×èÈû¡£ÓÃÒ»¸öͼÀ´ÃèÊöÈçÏ£º
1¡¢ÐÂ״̬£ºÏ̶߳ÔÏóÒѾ´´½¨£¬»¹Ã»ÓÐÔÚÆäÉϵ÷ÓÃstart()·½·¨¡£
2¡¢¿ÉÔËÐÐ״̬£ºµ±Ïß³ÌÓÐ× ......
JavaỊ̈߳ºÏ̵߳ĵ÷¶È-ÓÅÏȼ¶
ÓëÏß³ÌÐÝÃßÀàËÆ£¬Ï̵߳ÄÓÅÏȼ¶ÈÔÈ»ÎÞ·¨±£ÕÏÏ̵߳ÄÖ´ÐдÎÐò¡£Ö»²»¹ý£¬ÓÅÏȼ¶¸ßµÄÏ̻߳ñÈ¡CPU×ÊÔ´µÄ¸ÅÂʽϴó£¬ÓÅÏȼ¶µÍµÄ²¢·Çû»ú»áÖ´ÐС£
Ï̵߳ÄÓÅÏȼ¶ÓÃ1-10Ö®¼äµÄÕûÊý±íʾ£¬ÊýÖµÔ½´óÓÅÏȼ¶Ô½¸ß£¬Ä¬ÈϵÄÓÅÏȼ¶Îª5¡£
ÔÚÒ»¸öÏß³ÌÖпªÆôÁíÍâÒ»¸öÐÂỊ̈߳¬ÔòпªÏ̳߳ÆÎ ......
JavaỊ̈߳ºÏ̵߳ĵ÷¶È-ºÏ²¢
Ï̵߳ĺϲ¢µÄº¬Òå¾ÍÊǽ«¼¸¸ö²¢ÐÐÏ̵߳ÄÏ̺߳ϲ¢ÎªÒ»¸öµ¥Ïß³ÌÖ´ÐУ¬Ó¦Óó¡¾°Êǵ±Ò»¸öÏ̱߳ØÐëµÈ´ýÁíÒ»¸öÏß³ÌÖ´ÐÐÍê±Ï²ÅÄÜÖ´ÐÐʱ¿ÉÒÔʹÓÃjoin·½·¨¡£
joinΪ·Ç¾²Ì¬·½·¨£¬¶¨ÒåÈçÏ£º
void join()
µÈ´ý¸ÃÏß³ÌÖÕÖ¹¡£ ......
JavaỊ̈߳ºÏ̵߳ĵ÷¶È-ÊØ»¤Ïß³Ì
ÊØ»¤Ïß³ÌÓëÆÕͨÏß³Ìд·¨ÉÏ»ù±¾Ã´É¶Çø±ð£¬µ÷ÓÃÏ̶߳ÔÏóµÄ·½·¨setDaemon(true)£¬Ôò¿ÉÒÔ½«ÆäÉèÖÃÎªÊØ»¤Ï̡߳£
ÊØ»¤Ïß³ÌʹÓõÄÇé¿ö½ÏÉÙ£¬µ«²¢·ÇÎÞÓ㬾ÙÀýÀ´Ëµ£¬JVMµÄÀ¬»ø»ØÊÕ¡¢ÄÚ´æ¹ÜÀíµÈÏ̶߳¼ÊÇÊØ»¤Ï̡߳£»¹ÓоÍÊÇÔÚ×öÊý¾Ý¿âÓ¦ÓÃʱºò£¬Ê¹ÓõÄÊý¾Ý¿âÁ¬½Ó³Ø£¬Á¬½Ó³Ø±¾ÉíÒ²°üº ......