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

JavaỊ̈߳ºÐÂÌØÕ÷ Ï̳߳Ø

JavaỊ̈߳ºÐÂÌØÕ÷-Ï̳߳Ø
 
SunÔÚJava5ÖУ¬¶ÔJavaÏ̵߳ÄÀà¿â×öÁË´óÁ¿µÄÀ©Õ¹£¬ÆäÖÐÏ̳߳ؾÍÊÇJava5µÄÐÂÌØÕ÷Ö®Ò»£¬³ýÁËÏ̳߳ØÖ®Í⣬»¹Óкܶà¶àÏß³ÌÏà¹ØµÄÄÚÈÝ£¬Îª¶àÏ̵߳ıà³Ì´øÀ´Á˼«´ó±ãÀû¡£ÎªÁ˱àд¸ßЧÎȶ¨¿É¿¿µÄ¶àÏ̳߳ÌÐò£¬Ï̲߳¿·ÖµÄÐÂÔöÄÚÈÝÏÔµÃÓÈÎªÖØÒª¡£
 
ÓйØJava5Ïß³ÌÐÂÌØÕ÷µÄÄÚÈÝÈ«²¿ÔÚjava.util.concurrentÏÂÃæ£¬ÀïÃæ°üº¬ÊýÄ¿ÖÚ¶àµÄ½Ó¿ÚºÍÀ࣬ÊìϤÕⲿ·ÖAPIÌØÕ÷ÊÇÒ»Ïî¼èÄѵÄѧϰ¹ý³Ì¡£Ä¿Ç°ÓйØÕâ·½ÃæµÄ×ÊÁϺÍÊé¼®¶¼ÉÙÖ®ÓÖÉÙ£¬´óËùÊô½éÉÜÏ̷߳½ÃæÊé¼®»¹Í£ÁôÔÚjava5֮ǰµÄ֪ʶ²ãÃæÉÏ¡£
 
µ±È»ÐÂÌØÕ÷¶Ô×ö¶àÏ̳߳ÌÐòûÓбØÐëµÄ¹ØÏµ£¬ÔÚjava5֮ǰͨÓÿÉÒÔд³öºÜÓÅÐãµÄ¶àÏ̳߳ÌÐò¡£Ö»ÊÇ´ú¼Û²»Ò»Ñù¶øÒÑ¡£
 
Ï̳߳صĻù±¾Ë¼Ï뻹ÊÇÒ»ÖÖ¶ÔÏ󳨵Ä˼Ï룬¿ª±ÙÒ»¿éÄÚ´æ¿Õ¼ä£¬ÀïÃæ´æ·ÅÁËÖڶࣨδËÀÍö£©µÄỊ̈߳¬³ØÖÐÏß³ÌÖ´Ðе÷¶ÈÓɳعÜÀíÆ÷À´´¦Àí¡£µ±ÓÐÏß³ÌÈÎÎñʱ£¬´Ó³ØÖÐȡһ¸ö£¬Ö´ÐÐÍê³ÉºóÏ̶߳ÔÏó¹é³Ø£¬ÕâÑù¿ÉÒÔ±ÜÃâ·´¸´´´½¨Ï̶߳ÔÏóËù´øÀ´µÄÐÔÄÜ¿ªÏú£¬½ÚÊ¡ÁËϵͳµÄ×ÊÔ´¡£
 
ÔÚJava5֮ǰ£¬ÒªÊµÏÖÒ»¸öÏ̳߳ØÊÇÏ൱ÓÐÄѶȵģ¬ÏÖÔÚJava5ΪÎÒÃÇ×öºÃÁËÒ»ÇУ¬ÎÒÃÇÖ»ÐèÒª°´ÕÕÌṩµÄAPIÀ´Ê¹Ó㬼´¿ÉÏíÊÜÏ̳߳شøÀ´µÄ¼«´ó±ãÀû¡£
 
Java5µÄÏ̳߳طֺöàÖÖ£º¹Ì¶¨³ß´çµÄÏ̳߳ء¢¿É±ä³ß´çÁ¬½Ó³Ø¡¢¡£
 
ÔÚʹÓÃÏ̳߳ØÖ®Ç°£¬±ØÐëÖªµÀÈçºÎÈ¥´´½¨Ò»¸öÏ̳߳أ¬ÔÚJava5ÖУ¬ÐèÒªÁ˽âµÄÊÇjava.util.concurrent.ExecutorsÀàµÄAPI£¬Õâ¸öÀàÌṩ´óÁ¿´´½¨Á¬½Ó³ØµÄ¾²Ì¬·½·¨£¬ÊDZØÐëÕÆÎյġ£
 
Ò»¡¢¹Ì¶¨´óСµÄÏ̳߳Ø
 
import java.util.concurrent.Executors;
import java.util.concurrent.ExecutorService;
/**
* JavaỊ̈߳ºÏ̳߳Ø-
*
* @author Administrator 2009-11-4 23:30:44
*/
public class Test {
        public static void main(String[] args) {
                //´´½¨Ò»¸ö¿ÉÖØÓù̶¨Ïß³ÌÊýµÄÏ̳߳Ø
                ExecutorService pool = Executors.newFixedThreadPool(2);
                //´´½¨ÊµÏÖÁËRunnable½Ó¿Ú¶ÔÏó£¬Thread¶ÔÏóµ±È»Ò²ÊµÏÖÁËRunnable½Ó¿Ú
 &


Ïà¹ØÎĵµ£º

javaÖйؼü×ÖvolatileµÄ×÷ÓÃ

ÓÃÔÚ¶àỊ̈߳¬Í¬²½±äÁ¿¡£ Ïß³ÌΪÁËÌá¸ßЧÂÊ£¬½«Ä³³ÉÔ±±äÁ¿(ÈçA)¿½±´ÁËÒ»·Ý£¨ÈçB£©£¬Ïß³ÌÖжÔAµÄ·ÃÎÊÆäʵ·ÃÎʵÄÊÇB¡£Ö»ÔÚijЩ¶¯×÷ʱ²Å½øÐÐAºÍBµÄͬ²½¡£Òò´Ë´æÔÚAºÍB²»Ò»ÖµÄÇé¿ö¡£volatile¾ÍÊÇÓÃÀ´±ÜÃâÕâÖÖÇé¿öµÄ¡£volatile¸æËßjvm£¬ ËüËùÐÞÊεıäÁ¿²»±£Áô¿½±´£¬Ö±½Ó·ÃÎÊÖ÷ÄÚ´æÖеģ¨Ò²¾ÍÊÇÉÏÃæËµµÄA)
===================== ......

JavaỊ̈߳ºÏ̵߳ĵ÷¶È ÓÅÏȼ¶

JavaỊ̈߳ºÏ̵߳ĵ÷¶È-ÓÅÏȼ¶
 
ÓëÏß³ÌÐÝÃßÀàËÆ£¬Ï̵߳ÄÓÅÏȼ¶ÈÔÈ»ÎÞ·¨±£ÕÏÏ̵߳ÄÖ´ÐдÎÐò¡£Ö»²»¹ý£¬ÓÅÏȼ¶¸ßµÄÏ̻߳ñÈ¡CPU×ÊÔ´µÄ¸ÅÂʽϴó£¬ÓÅÏȼ¶µÍµÄ²¢·Çû»ú»áÖ´ÐС£
 
Ï̵߳ÄÓÅÏȼ¶ÓÃ1-10Ö®¼äµÄÕûÊý±íʾ£¬ÊýÖµÔ½´óÓÅÏȼ¶Ô½¸ß£¬Ä¬ÈϵÄÓÅÏȼ¶Îª5¡£
 
ÔÚÒ»¸öÏß³ÌÖпªÆôÁíÍâÒ»¸öÐÂỊ̈߳¬ÔòпªÏ̳߳ÆÎ ......

JavaỊ̈߳ºÏ̵߳ĵ÷¶È ºÏ²¢

JavaỊ̈߳ºÏ̵߳ĵ÷¶È-ºÏ²¢
 
Ï̵߳ĺϲ¢µÄº¬Òå¾ÍÊǽ«¼¸¸ö²¢ÐÐÏ̵߳ÄÏ̺߳ϲ¢ÎªÒ»¸öµ¥Ïß³ÌÖ´ÐУ¬Ó¦Óó¡¾°Êǵ±Ò»¸öÏ̱߳ØÐëµÈ´ýÁíÒ»¸öÏß³ÌÖ´ÐÐÍê±Ï²ÅÄÜÖ´ÐÐʱ¿ÉÒÔʹÓÃjoin·½·¨¡£
 
joinΪ·Ç¾²Ì¬·½·¨£¬¶¨ÒåÈçÏ£º
void join()    
    µÈ´ý¸ÃÏß³ÌÖÕÖ¹¡£   ......

JavaỊ̈߳ºÏ̵߳ĵ÷¶È ÊØ»¤Ïß³Ì

JavaỊ̈߳ºÏ̵߳ĵ÷¶È-ÊØ»¤Ïß³Ì
 
ÊØ»¤Ïß³ÌÓëÆÕͨÏß³Ìд·¨ÉÏ»ù±¾Ã´É¶Çø±ð£¬µ÷ÓÃÏ̶߳ÔÏóµÄ·½·¨setDaemon(true)£¬Ôò¿ÉÒÔ½«ÆäÉèÖÃÎªÊØ»¤Ï̡߳£
 
ÊØ»¤Ïß³ÌʹÓõÄÇé¿ö½ÏÉÙ£¬µ«²¢·ÇÎÞÓ㬾ÙÀýÀ´Ëµ£¬JVMµÄÀ¬»ø»ØÊÕ¡¢ÄÚ´æ¹ÜÀíµÈÏ̶߳¼ÊÇÊØ»¤Ï̡߳£»¹ÓоÍÊÇÔÚ×öÊý¾Ý¿âÓ¦ÓÃʱºò£¬Ê¹ÓõÄÊý¾Ý¿âÁ¬½Ó³Ø£¬Á¬½Ó³Ø±¾ÉíÒ²°üº ......

JavaỊ̈߳ºvolatile¹Ø¼ü×Ö

JavaỊ̈߳ºvolatile¹Ø¼ü×Ö
 
Java™ ÓïÑÔ°üº¬Á½ÖÖÄÚÔÚµÄͬ²½»úÖÆ£ºÍ¬²½¿é£¨»ò·½·¨£©ºÍ volatile ±äÁ¿¡£ÕâÁ½ÖÖ»úÖÆµÄÌá³ö¶¼ÊÇΪÁËʵÏÖ´úÂëÏ̵߳ݲȫÐÔ¡£ÆäÖÐ Volatile ±äÁ¿µÄͬ²½ÐԽϲµ«ÓÐʱËü¸ü¼òµ¥²¢ÇÒ¿ªÏú¸üµÍ£©£¬¶øÇÒÆäʹÓÃÒ²¸üÈÝÒ׳ö´í¡£
 
̸¼°µ½volatile¹Ø¼ü×Ö£¬²»µÃ²»ÌáµÄһƪÎÄÕÂÊÇ£º¡¶Java ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ