javaµÄÔ×Ó²Ù×÷ºÍvolatile
Ô×Ó²Ù×÷
ËùνÔ×Ó²Ù×÷,¾ÍÊÇ"²»¿ÉÖжϵÄÒ»¸ö»òһϵÁвÙ×÷" , ÔÚÈ·ÈÏÒ»¸ö²Ù×÷ÊÇÔ×ÓµÄÇé¿öÏ£¬¶àÏ̻߳·¾³ÀïÃæ£¬ÎÒÃÇ¿ÉÒÔ±ÜÃâ½ö½öΪ±£»¤Õâ¸ö²Ù×÷ ÔÚÍâΧ¼ÓÉÏÐÔÄܰº¹óµÄËø£¬ÉõÖÁ½èÖúÓÚÔ×Ó²Ù×÷£¬ÎÒÃÇ¿ÉÒÔʵÏÖ»¥³âËø¡£ ¹ØÓÚjavaÖеÄÔ×ÓÐÔ
Ô×ÓÐÔ¿ÉÒÔÓ¦ÓÃÓÚ³ýlongºÍdoubleÖ®ÍâµÄËùÓлù±¾ÀàÐÍÖ®Éϵġ°¼òµ¥²Ù×÷¡±¡£¶ÔÓÚ¶ÁÈ¡ºÍдÈë³ölongºÍdoubleÖ®ÍâµÄ»ù±¾ÀàÐͱäÁ¿ÕâÑùµÄ²Ù×÷ £¬¿ÉÒÔ±£Ö¤ËüÃǻᱻµ±×÷²»¿É·Ö£¨Ô×Ó£©µÄ²Ù×÷À´²Ù×÷¡£ volatile
µ±ÎÒÃǶ¨ÒåÒ»¸ö±äÁ¿£¬¼ÙÉè¾Í½Ðo°É£¬ÀíÂÛÉϽ²£¬Ã¿´ÎʹÓõ½oµÄʱºò£¬¶¼Ó¦¸Ã´ÓoµÄµØÖ·À´¶ÁÈ¡Õâ¸ö±äÁ¿£¬µ«ÊÇÕâ´æÔÚÒ»¸öЧÂÊÎÊÌ⣬¾ÍÊÇÿ´Î ʹÓÃoµÄʱºò¶¼Òª´ÓÄÚ´æÖÐȥȡֵ£¬È»ºóͨ¹ýϵͳ×ÜÏß´«µ½CPU´¦Àí£¬ÕâÑù¿ªÏú»áºÜ´ó¡£ËùÒÔ±àÒëÆ÷ΪÁËÓÅ»¯ÐÔÄÜ£¬°Ño·Å½øCPUµÄCacheÖУ¬¼ÙÈç oÔÚ¸³ÖµÆÚ¼äûÓб»¸Ä±ä£¬¾ÍÖ±½Ó´ÓCPUµÄCacheÀïÈ¡oµÄ¸±±¾À´½øÐи³Öµ¡£µ«ÊÇ"bug"Ò²ÏÔ¶øÒ×¼û£¬¿ÉÄÜoÒѾ±»Ò»¸öÏß³Ì¸Ä±ä¶øÖØÐÂд»ØÁËÄÚ´æ £¬µ«ÁíÒ»¸öÏ̲߳¢²»ÖªµÀ£¬ÒÀ¾É°´ÕÕÔÀ´µÄ¼Æ»®´ÓCPUµÄCacheÀï¶ÁoµÄ¸±±¾À´È¡Öµ£¬½á¹û²»ÐÒ·¢ÉúÁË¡£ ÓÚÊDZàÒëÆ÷µÄ¿ª·¢ÕßΪÁ˲¹¾ÈÕâÒ»"bug"£¬ÌṩÁËÒ»¸övolatileÈÿª·¢ÈËԱΪËûÃǵĹýʧÂñµ¥£¬»òÕß˵Ìṩ¸ø¿ª·¢ÈËÔ±ÁËÒ»¸öÑ¡ÔñЧÂʵÄȨÀû¡£ µ±±äÁ¿¼ÓÉÏÁËvolatileʱ£¬±àÒëÆ÷¾ÍÀÏÀÏʵʵµÄÿ´Î¶¼´ÓÄÚ´æÖжÁÈ¡Õâ¸ö±äÁ¿Öµ£¬·ñÔò¾Í»¹°´ÕÕÓÅ»¯µÄ·½°¸´ÓcacheÀï¶Á¡£ ÔÚÁ½¸ö»òÕ߸ü¶àµÄÏ̷߳ÃÎʵijÉÔ±±äÁ¿ÉÏʹÓÃvolatile½ÏºÃ£¬µ±Òª·ÃÎʵıäÁ¿ÒÑÔÚsynchronized´úÂë¿éÖУ¬»òÕßΪ³£Á¿Ê±£¬²»±ØÊ¹Óá£
Ïà¹ØÎĵµ£º
Java™ ÓïÑÔ°üº¬Á½ÖÖÄÚÔÚµÄͬ²½»úÖÆ£ºÍ¬²½¿é£¨»ò·½·¨£©ºÍ volatile ±äÁ¿¡£ÕâÁ½ÖÖ»úÖÆµÄÌá³ö¶¼ÊÇΪÁËʵÏÖ´úÂëÏ̵߳ݲȫÐÔ¡£ÆäÖÐ Volatile ±äÁ¿µÄͬ²½ÐԽϲµ«ÓÐʱËü¸ü¼òµ¥²¢ÇÒ¿ªÏú¸üµÍ£©£¬¶øÇÒÆäʹÓÃÒ²¸üÈÝÒ׳ö´í¡£ÔÚÕâÆÚµÄ Java ÀíÂÛÓëʵ¼ù
ÖУ¬Brian Goetz ½«½éÉܼ¸ÖÖÕýȷʹÓà volatile ±äÁ¿µÄģʽ£¬²¢Õë¶ÔÆäÊÊÓ ......
0¡¢ ÐèÒª±êʶ·û
a) ²»ÔÚº¯ÊýÄÚ
1¡¢ ·Ç·¨±í´ïʽ¿ªÊ¼
b) ¿ÉÄÜ:¶ªÊ§À¨ºÅ .
2. no data found
a) ¿ÉÄÜ:setInt(1,100)ÖÐ,ûÓÐ100Õâ¸öÖµ
3. ÕÒ²»µ½·ûºÅ
a) ¿ÉÄÜ:ûµ¼Èë°ü
4. Ö¸¶¨ÁËÎÞЧURL
a) ¿ÉÄÜ:Êý¾Ý¿âÃû»òIP´íÎó,¼´Á¬½Ó³ö´í
5. Àà·¾¶Ã»ÓÐÕÒµ½
a) ¿ÉÄÜ: ClassNotFoundException: oracle.jdbc.driver.Or ......
2006-01-18 13:53×÷Õߣº³ö´¦£º²©¿ÍÔ°ÔðÈα༣º·½ÖÛ http://dev.yesky.com/178/2278678.shtml ÒýÑÔ
JavaµÄ¶ÑÊÇÒ»¸öÔËÐÐʱÊý¾ÝÇø£¬ÀàµÄʵÀý(¶ÔÏó)´ÓÖзÖÅä¿Õ¼ä¡£JavaÐéÄâ»ú(JVM)µÄ¶ÑÖд¢´æ×ÅÕýÔÚÔËÐеÄÓ¦ÓóÌÐòËù½¨Á¢µÄËùÓжÔÏó£¬ÕâЩ¶ÔÏóͨ¹ýnew¡¢newarray¡¢anewarrayºÍmultianewarrayµÈÖ¸ÁÁ¢£¬µ«ÊÇËüÃDz»ÐèÒ ......
package algorithm.misc;
import util.*;
public class MaxProductOfN1 {
private static int exceptIndex = -1;
public static long regMethod(int data[])
{
long ret = Long.MIN_VALUE;
& ......