Java Concurrent°üѧϰ֮ConcurrentHashMap
ÔÚJava concurrent°üÖÐÓÐÕâôһ¸ö½Ó¿Ú£ºConcurrentMap¡£
ConcurrentMap¼Ì³Ð×ÔMap£¬²¢Ìí¼ÓÁ˼¸¸öеÄÔ×Ó·½·¨£º putIfAbsent¡¢remove¡¢replace
Æä·½·¨ÕªÒªÈçÏ£º
V
putIfAbsent(K key, V value)
Èç¹ûÖ¸¶¨¼üÒѾ²»ÔÙÓëij¸öÖµÏà¹ØÁª£¬Ôò½«ËüÓë¸ø¶¨Öµ¹ØÁª¡£
boolean
remove(Object key, Object value)
Ö»ÓÐĿǰ½«¼üµÄÌõĿӳÉäµ½¸ø¶¨ÖµÊ±£¬²ÅÒÆ³ý¸Ã¼üµÄÌõÄ¿¡£
V
replace(K key, V value)
Ö»ÓÐĿǰ½«¼üµÄÌõĿӳÉ䵽ijһֵʱ£¬²ÅÌæ»»¸Ã¼üµÄÌõÄ¿¡£
boolean
replace(K key, V oldValue, V newValue)
Ö»ÓÐĿǰ½«¼üµÄÌõĿӳÉäµ½¸ø¶¨ÖµÊ±£¬²ÅÌæ»»¸Ã¼üµÄÌõÄ¿¡£
ConcurrentHashMapÀàÊÇConcurrentMap½Ó¿ÚµÄÒ»¸öʵÏÖÀà¡£
Ö§³Ö¼ìË÷µÄÍêÈ«²¢·¢ºÍ¸üеÄËùÆÚÍû¿Éµ÷Õû²¢·¢µÄ¹þÏ£±í¡£
´ËÀà×ñÊØÓë Hashtable ÏàͬµÄ¹¦Äܹ淶£¬²¢ÇÒ°üÀ¨¶ÔÓ¦ÓÚ Hashtable µÄÿ¸ö·½·¨µÄ·½·¨°æ±¾¡£
²»¹ý£¬¾¡¹ÜËùÓвÙ×÷¶¼ÊÇḬ̈߳²È«µÄ£¬µ«¼ìË÷²Ù×÷²» ±ØËø¶¨£¬²¢ÇÒ²» Ö§³ÖÒÔijÖÖ·ÀÖ¹ËùÓзÃÎʵķ½Ê½Ëø¶¨Õû¸ö±í¡£
´ËÀà¿ÉÒÔͨ¹ý³ÌÐòÍêÈ«Óë Hashtable ½øÐл¥²Ù×÷£¬ÕâÈ¡¾öÓÚÆäḬ̈߳²È«£¬¶øÓëÆäͬ²½Ï¸½ÚÎ޹ء£
¼ìË÷²Ù×÷£¨°üÀ¨ get£©Í¨³£²»»áÊÜ×èÈû£¬Òò´Ë£¬¿ÉÄÜÓë¸üвÙ×÷½»µü£¨°üÀ¨ put ºÍ remove£©¡£
¼ìË÷»áÓ°Ïì×î½üÍê³ÉµÄ ¸üвÙ×÷µÄ½á¹û¡£
¶ÔÓÚһЩ¾ÛºÏ²Ù×÷£¬±ÈÈç putAll ºÍ clear£¬²¢·¢¼ìË÷¿ÉÄÜÖ»Ó°ÏìijЩÌõÄ¿µÄ²åÈëºÍÒÆ³ý¡£
ÀàËÆµØ£¬ÔÚ´´½¨µü´úÆ÷/ö¾Ùʱ»ò×Ô´ËÖ®ºó£¬Iterators ºÍ Enumerations ·µ»ØÔÚijһʱ¼äµãÉÏÓ°Ïì¹þÏ£±í״̬µÄÔªËØ¡£ËüÃDz»»á Å׳ö ConcurrentModificationException¡£²»¹ý£¬µü´úÆ÷±»Éè¼Æ³Éÿ´Î½öÓÉÒ»¸öÏß³ÌʹÓá£
ÕâÔÊÐíͨ¹ý¿ÉÑ¡µÄ concurrencyLevel ¹¹Ôì·½·¨²ÎÊý£¨Ä¬ÈÏֵΪ 16£©À´Òýµ¼¸üвÙ×÷Ö®¼äµÄ²¢·¢£¬¸Ã²ÎÊýÓÃ×÷ÄÚ²¿µ÷Õû´óСµÄÒ»¸öÌáʾ¡£±íÊÇÔÚÄÚ²¿½øÐзÖÇøµÄ£¬ÊÔͼÔÊÐíָʾÎÞÕùÓò¢·¢¸üеÄÊýÁ¿¡£ÒòΪ¹þÏ£±íÖеÄλÖûù±¾ÉÏÊÇËæÒâµÄ£¬ËùÒÔʵ¼ÊµÄ²¢·¢½«¸÷²»Ïàͬ¡£ÀíÏëÇé¿öÏ£¬Ó¦¸ÃÑ¡ÔñÒ»¸ö¾¡¿ÉÄÜ¶àµØÈÝÄɲ¢·¢Ð޸ĸñíµÄÏ̵߳ÄÖµ¡£Ê¹ÓÃÒ»¸ö±ÈËùÐèÒªµÄÖµ¸ßºÜ¶àµÄÖµ¿ÉÄÜ»áÀ˷ѿռäºÍʱ¼ä£¬¶øÊ¹ÓÃÒ»¸öÏÔÈ»µÍ
Ïà¹ØÎĵµ£º
1.Listת»»³ÉΪÊý×é¡££¨ÕâÀïµÄListÊÇʵÌåÊÇArrayList)
¡¡¡¡µ÷ÓÃArrayListµÄtoArray·½·¨¡£
¡¡¡¡toArray
¡¡¡¡public <T> T[] toArray(T[] a)·µ»ØÒ»¸ö°´ÕÕÕýÈ·µÄ˳Ðò°üº¬´ËÁбíÖÐËùÓÐÔªËØµÄÊý×飻·µ»ØÊý×éµÄÔËÐÐʱÀàÐ;ÍÊÇÖ¸¶¨Êý×éµÄÔËÐÐʱÀàÐÍ¡£Èç¹ûÁбíÄÜ·ÅÈëÖ¸¶¨µÄÊý×飬Ôò·µ»Ø·ÅÈë´ËÁбíÔªËØµÄÊý×é¡£·ñÔò£¬½«¸ù¾ ......
JavaÉè¼ÆÄ£Ê½Ö®×ÛÊöƪ
http://tech.it168.com/a2009/0223/266/000000266380.shtml
×Ô´ÓJ2EE³öÏÖÒÔÀ´£¬¾Í´ó´ó¼ò»¯ÁËÔÚJavaÏÂµÄÆóÒµ¼¶¿ª·¢¡£µ«ÊÇËæ×ÅJ2EEÔ½À´Ô½ÆÕ±éµØ±»Ó¦Óõ½¸÷¸öÁìÓòÖУ¬¿ª·¢ÕßÃǽ¥½¥Òâʶµ½ÐèÒªÒ»ÖÖ·½·¨À´±ê×¼»¯Ó¦ÓóÌÐòµÄ¿ª·¢¹ý³Ì£¬ËûÃDzÉÓõķ½·¨ÊDZê×¼»¯Ó¦ÓóÌÐòµÄ½á¹¹²ã¡£Ôڽṹ²ãͨ³£·â×°ÁËһЩ¶ÀÁ¢Ó ......
ÎÒʹÓÃURLÀàÀ´·ÃÎÊFTP·þÎñÆ÷£¬µ±µØÖ·ÖÐûÓÐÖÐÎÄʱûÓÐÎÊÌ⣬µ«ÊÇ
µ±ftpÖеÄÎļþ¼ÐÓÐÖÐÎÄʱ£¬¾ÍÎÞ·¨·ÃÎÊÁË£¬ÎÒÊÔ¹ýencoderºÍdecoderÀ࣬¶¼²»ÐУ¬ÓÐʲô½â¾ö·½·¨Ã´£¿
URL now = new URL("ftp://202.204.208.124/Èí¼þ/");
......
ÔÚjavaÖУ¬¼ÙÉèÄãÓÐÒ»¸öuser ¶ÔÏóµÄlist£¬´Ëuser¶ÔÏó·â×°ÁËÓû§µÄid, first name, last name and age. È»ºóÄãÏëµ÷ÓÃÒ»¸öweb service(eg. UserService.deleteUsersByIds(List<Integer> userIds) ȥɾ³ýÊý¾Ý¿âÖÐÖ¸¶¨µÄÕâЩuser¡£ ÌýÆðÀ´Ëƺõ²»Ì«À§ÄÑ£¬²»ÊÇô? ÄãËùÐèÒªÖ»Êǽ« List<User> ת»¯³ÉList&l ......
ÊÂÎñ´¦Àí×ܽá
À´Ô´£ºhttp://space.itpub.net/13956325/viewspace-598381
Ò»¡¢Ê²Ã´ÊÇJava ÊÂÎñ
ͨ³£µÄ¹ÛÄîÈÏΪ£¬ÊÂÎñ½öÓëÊý¾Ý¿â Ïà¹Ø¡£
Ê Îñ±ØÐë·þ´ÓISO/IECËùÖÆ¶¨µÄACIDÔÔò¡£ACIDÊÇÔ×ÓÐÔ£¨atomicity£©¡¢Ò»ÖÂÐÔ£¨consistency£©¡¢¸ôÀëÐÔ £¨isolation£©ºÍ³Ö¾ÃÐÔ£¨durability£©µÄËõд¡£ÊÂÎñµÄÔ×ÓÐÔ±íʾÊÂÎñ ......