JavaÖÐÏ̵߳ĸ߼¶Ó¦ÓÃ
Ò»¡¢Java¶àÏ̻߳¥³â¼°Í¬²½¿ØÖƺÍͨÐÅ
¶à¸öÏ̵߳ÄÖ´ÐÐÊDz¢·¢µÄ£¬Ò²¾ÍÊÇÔÚÂß¼Éϓͬʱ”£¬¶ø²»¹ÜÊÇ·ñÊÇÎïÀíÉϵēͬʱ”¡£Èç¹ûϵͳֻÓÐÒ»¸öCPU£¬ÄÇ̫;ÕýµÄ“ͬʱ”ÊDz»¿ÉÄܵ쬵«ÊÇÓÉÓÚCPUµÄËٶȷdz£¿ì£¬Óû§¸Ð¾õ²»µ½ÆäÖеÄÇø±ð£¬Òò´ËÎÒÃÇÒ²²»ÓùØÐÄËü£¬Ö»ÐèÒªÉèÏë¸÷¸öÏß³ÌÊÇͬʱִÐм´¿É¡£
¶àÏ̺߳ʹ«Í³µÄµ¥Ïß³ÌÔÚ³ÌÐòÉè¼ÆÉÏ×î´óµÄÇø±ðÔÚÓÚ£¬ÓÉÓÚ¸÷¸öÏ̵߳ĿØÖÆÁ÷±Ë´Ë¶ÀÁ¢£¬Ê¹µÃ¸÷¸öÏß³ÌÖ®¼äµÄ´úÂëÊÇÂÒÐòÖ´Ðеģ¬ÓÉ´Ë´øÀ´µÄÏ̵߳÷¶È£¬Í¬²½µÈÎÊÌâ¡£
1¡¢Ï̻߳¥³âÓëÏß³Ìͬ²½
Ï̻߳¥³â£º²¢·¢Ö´ÐеĶà¸öÏß³ÌÔÚijһʱ¼äÄÚÖ»ÔÊÐíÒ»¸öÏß³ÌÔÚÖ´ÐÐÒÔ·ÃÎÊÊý¾Ý¡£
Ïß³Ìͬ²½£º²¢·¢Ö´ÐеĶà¸öÏß³ÌÖ®¼ä»¥Ïà·¢ËÍÏûÏ¢½øÐкÏ×÷¡¢»¥ÏàµÈ´ý£¬°´Ò»¶¨ËÙ¶ÈÅäºÏÖ´ÐС£
2¡¢Ï̻߳¥³â
ÓÉÓÚͬһ½ø³ÌµÄ¶à¸öÏ̹߳²ÏíͬһƬ´æ´¢¿Õ¼ä£¬ÔÚ´øÀ´·½±ãµÄͬʱ£¬Ò²´øÀ´ÁË·ÃÎʳåÍ»Õâ¸öÑÏÖØµÄÎÊÌâ¡£JavaÓïÑÔÌṩÁËרÃÅ»úÖÆÒÔ½â¾öÕâÖÖ³åÍ»£¬ÓÐЧ±ÜÃâÁËͬһ¸öÊý¾Ý¶ÔÏó±»¶à¸öÏß³Ìͬʱ·ÃÎÊ¡£
£¨1£©Ó¦Óõij¡ºÏ£º
µ±Á½¸ö»ò¶à¸öÏß³Ìͬʱ·ÃÎʹ²ÏíÊý¾Ýʱ£¬¿ÉÄܶÔÊý¾Ý½øÐжÁ¡¢Ð´¡¢Ð޸ġ¢É¾³ýµÈ²Ù×÷ʱ£¬Ó¦±£Ö¤Í¬Ê±Ö»ÓÐÒ»¸öÏ̷߳ÃÎʹ²ÏíÊý¾Ý¡£
£¨2£©Ï̻߳¥³âµÄʵÏÖ»úÖÆ
¢Ù ¼àÊÓÆ÷£¨Í¬²½Ëø¶¨£©£º
Ï߳̽øÈë¼àÊÓÆ÷ºóÆäËüÏß³ÌÔò²»ÄÜÔÙ½øÈë¼àÊÓÆ÷£¬Ö±µ½±»Ëø¶¨µÄÏß³ÌÍ˳ö¼àÊÓÆ÷£¬ÏÂÒ»¸öÏ̲߳ÅÄܽøÈë¼àÊÓÆ÷±»Ö´ÐС£
ÈçºÎ²úÉú¼àÊÓÆ÷£¨Í¬²½»¥³â·½·¨£©£ºÍ¨¹ýÔÚ±»¶à¸öÏß³ÌËù¹²ÏíµÄ·½·¨Ç°¼ÓÉÏsynchronized¹Ø¼ü×Ö¶¨Òå³öͬ²½»¥³â·½·¨£¬Ã¿Ò»¸öÓµÓÐsynchronized·½·¨µÄ¶ÔÏ󶼺¬ÓÐÒ»¸ö¶ÀÁ¢µÄ¼àÊÓÆ÷£¬Ö»ÓÐijһ¸öÏ̵߳Äsynchronized·½·¨Ö´ÐÐÍêºóÆäËüÏ̵߳Äsynchronized·½·¨²ÅÄܱ»Ö´ÐС£
public synchronized void myFun()
{
}
¢Ú ±à³ÌÒªµã£º
l Ó¦½«·ÃÎʹ²ÏíÊý¾ÝµÄ´úÂëÉè¼ÆÎªsynchronized·½·¨£»
l synchronized¿ÉÒÔÓÃÀ´ÏÞ¶¨Ò»¸ö·½·¨»òһС¶ÎÓï¾ä»òÕû¸öÀࣨ¿É½«ÀàµÄ¾²Ì¬³ÉÔ±º¯ÊýÉùÃ÷Ϊ synchronized £¬ÒÔ¿ØÖÆÆä¶ÔÀàµÄ¾²Ì¬³ÉÔ±±äÁ¿µÄ·ÃÎÊ£©£¬¼´Àà·½·¨£¬ÊµÀý·½·¨£¬Ò»¸ö·½·¨ÖеÄÈκδúÂë¿é¡£
l ÓÉÓÚ¿ÉÒÔͨ¹ý private ¹Ø¼ü×ÖÀ´±£Ö¤Êý¾Ý¶ÔÏóÖ»Äܱ»·½·¨·ÃÎÊ£¬ËùÒÔÖ»ÐèÕë¶Ô·½·¨Ìá³öÒ»Ì×ͬ²½Ëø¶¨»úÖÆ¡£Í¨¹ýsynchronized ·½·¨À´¿ØÖƶÔÀàÖеijÉÔ±±äÁ¿£¨¹²ÏíÊý¾Ý£©µÄ·ÃÎÊ¡£
£¨3£©synchronized ¹Ø¼ü×Ö
ÔÚÓÐЩӦÓÃÖУ¬¿ÉÄÜ»á³öÏÖÁ½¸öÏ̷߳ÃÎÊͬһ¸ö¶ÔÏóµÄÇé¿ö¡£µ«ÊÇ£¬ÔÚ´ó¶àÊýÓÐÓõijÌÐòÖУ¬Ïß³ÌÖ®¼äͨ³£ÓÐÐÅÏ
Ïà¹ØÎĵµ£º
Java NIO APIÏê½â
ÔÚJDK
1.4ÒÔǰ£¬JavaµÄIO²Ù×÷¼¯ÖÐÔÚjava.ioÕâ¸ö°üÖУ¬ÊÇ»ùÓÚÁ÷µÄ×èÈû£¨blocking£©API¡£¶ÔÓÚ´ó¶àÊýÓ¦ÓÃÀ´Ëµ£¬ÕâÑùµÄAPIʹÓúܷ½
±ã£¬È»¶ø£¬Ò»Ð©¶ÔÐÔÄÜÒªÇó½Ï¸ßµÄÓ¦Óã¬ÓÈÆäÊÇ·þÎñ¶ËÓ¦Óã¬ÍùÍùÐèÒªÒ»¸ö¸üΪÓÐЧµÄ·½Ê½À´´¦ÀíIO¡£´ÓJDK 1.4Æð£¬NIO
API×÷Ϊһ¸ö»ùÓÚ»º³åÇø£¬²¢ÄÜÌṩ·Ç×èÈû(non-blo ......
ÀàµÄ³õʼ»¯ºÍ¶ÔÏó³õʼ»¯ÊÇ JVM ¹ÜÀíµÄÀàÐÍÉúÃüÖÜÆÚÖзdz£ÖØÒªµÄÁ½¸ö»·½Ú£¬Google ÁËÒ»±éÍøÂ磬ÓйØÀà×°ÔØ»úÖÆµÄÎÄÕµ¹ÊDz»ÉÙ£¬È»¶øÀà³õʼ»¯ºÍ¶ÔÏó³õʼ»¯µÄÎÄÕ²¢²»¶à£¬ÌرðÊÇ´Ó×Ö½ÚÂëºÍ JVM ²ã´ÎÀ´·ÖÎöµÄÎÄÕ¸üÊÇÏÊÓÐËù¼û¡£
±¾ÎÄÖ÷Òª¶ÔÀàºÍ¶ÔÏó³õʼ»¯È«¹ý³Ì½øÐзÖÎö£¬Í¨¹ýÒ»¸öʵ¼ÊÎÊÌâÒýÈ룬½«Ô´´úÂëת»»³É JVM ×Ö½ÚÂëºó£¬ ......
public class Sort {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] arry = { 19, 10, 5, 45, 100, 30, 35, 29 };
int[] sortArry = mergeSort(arry);
for (int i = 0; i < sortArry.le ......
Èí»Ø³µ£¨Soft Return£©£ºÈí»Ø³µÊÇÔÚ×Ö´¦Àí³ÌÐòÖÐ×÷Ϊ×Ô¶¯ÒÆÐй¦ÄܵÄÒ»²¿·Ö×Ô¶¯²åÈëµÄ£¬Ò²½Ð»»Ðзû£¬ÔÚwordÖп´²»¼û¡£Èç¹ûÎı¾Ò»Ðеij¤¶È³¬¹ýÎĵµËù¶¨ÒåµÄÓұ߾àʱ£¬¼´µ±Ç°ÐÐûÓÐ×ã¹»µÄ¿Õ¼ä·ÅÖÃÏÂÒ»¸ö×Ö·ûʱ£¬ÎÄ×Ö´¦ÀíÈí¼þ½«ÔÚÕâÒ»ÐÐÎı¾µÄĩβ×Ô¶¯²åÈëÒ»¸öÈí»Ø³µ·û£¬Îı¾ÁíÆðÒ»ÐС£Õâ¸öÈí»Ø³µ·ûÊÇÓɱ༳ÌÐò×Ô¶¯²úÉúµÄ£¬½Ð× ......
ºÃ¾ÃÁË£¬¶¼ÏëÏòѧϰJAVAµÄÐÂÈËдµã¶«Î÷£¬ÒòΪÎÒʵÔÚ¿´²»ÏÂÈ¥ÁË£¬¿´²»ÏÂÈ¥ºÜ¶àÎóµ¼JAVAѧϰÕߵĹ۵㣬±é¼°ÌìÏ£¡ÍøÂçÈúõĶ«Î÷Á÷ÐУ¬¿ÉÊÇÍùÍùÒ²ÈôíµÄ¶«Î÷³öÏֵĴÎÊý¶àÁ˱äµÄºÃÏñÕýÈ·ÁË£¬ÈýÈ˳ɻ¢£¬Ö¸Â¹ÎªÂíËÆºõÔÚÍøÂçÀï¸ü¼ÓÈÝÒ×·¢Éú£¬ºÃÁË·Ï»°²»Ëµ£¬Çë¿´ÎÒϸϸÏòÄãµÀÀ´¡£
ÃØÃÜÒ»£¬Ñ§Ï°JAVAºÃδ±Ø¿ÉÒÔ ......