javaÖÐÀ¬»ø»ØÊÕ»úÖÆ(gc)
ÔÚjavaÓïÖÐGC
¼´À¬»øÊÕ¼¯»úÖÆÊÇÖ¸jvmÓÃÓÚÊÍ·ÅÄÇЩ²»ÔÙʹÓõĶÔÏóËùÕ¼ÓõÄÄÚ´æ¡£javaÓïÑÔ²¢²»ÒªÇójvmÓÐgc£¬Ò²Ã»Óй涨gcÈçºÎ¹¤×÷¡£²»¹ý³£ÓõÄjvm¶¼ÓÐgc£¬¶øÇÒ´ó¶àÊýgc¶¼Ê¹ÓÃÀàËƵÄËã·¨¹ÜÀíÄÚ´æºÍÖ´ÐÐÊÕ¼¯²Ù×÷¡£
À¬»øÊÕ¼¯µÄÄ¿µÄÔÚÓÚÇå³ý²»ÔÙʹÓõĶÔÏó¡£gcͨ¹ýÈ·¶¨¶ÔÏóÊÇ·ñ±»»î¶¯¶ÔÏóÒýÓÃÀ´È·¶¨ÊÇ·ñÊÕ¼¯¸Ã¶ÔÏó¡£gcÊ×ÏÈÒªÅжϸöÔÏóÊÇ·ñÊÇʱºò¿ÉÒÔÊÕ¼¯¡£Á½ÖÖ³£Óõķ½·¨ÊÇÒýÓüÆÊýºÍ¶ÔÏóÒýÓñéÀú¡£
1.1.ÒýÓüÆÊý
ÒýÓüÆÊý´æ´¢¶ÔÌض¨¶ÔÏóµÄËùÓÐÒýÓÃÊý£¬Ò²¾ÍÊÇ˵£¬µ±Ó¦ÓóÌÐò´´½¨ÒýÓÃÒÔ¼°ÒýÓó¬³ö·¶Î§Ê±£¬jvm±ØÐëÊʵ±Ôö¼õÒýÓÃÊý¡£µ±Ä³¶ÔÏóµÄÒýÓÃÊýΪ0ʱ£¬±ã¿ÉÒÔ½øÐÐÀ¬»øÊÕ¼¯¡£
1.2.¶ÔÏóÒýÓñéÀú
ÔçÆÚµÄjvmʹÓÃÒýÓüÆÊý£¬ÏÖÔÚ´ó¶àÊýjvm²ÉÓöÔÏóÒýÓñéÀú¡£¶ÔÏóÒýÓñéÀú´ÓÒ»×é¶ÔÏó¿ªÊ¼£¬ÑØ×ÅÕû¸ö¶ÔÏóͼÉϵÄÿÌõÁ´½Ó£¬µÝ¹éÈ·¶¨¿Éµ½´ï£¨reachable£©µÄ¶ÔÏó¡£Èç¹ûij¶ÔÏó²»ÄÜ´ÓÕâЩ¸ù¶ÔÏóµÄÒ»¸ö£¨ÖÁÉÙÒ»¸ö£©µ½´ï£¬Ôò½«Ëü×÷ΪÀ¬»øÊÕ¼¯¡£ÔÚ¶ÔÏó±éÀú½×¶Î£¬gc±ØÐë¼ÇסÄÄЩ¶ÔÏó¿ÉÒÔµ½´ï£¬ÒÔ±ãɾ³ý²»¿Éµ½´ïµÄ¶ÔÏó£¬Õâ³ÆΪ±ê¼Ç£¨marking£©¶ÔÏó¡£
È»ºó£¬gcҪɾ³ý²»¿Éµ½´ïµÄ¶ÔÏó¡£É¾³ýʱ£¬ÓÐЩgcÖ»ÊǼòµ¥µÄɨÃè¶ÑÕ»£¬É¾³ýδ±ê¼ÇµÄ¶ÔÏ󣬲¢ÊÍ·ÅËüÃǵÄÄÚ´æÒÔÉú³ÉеĶÔÏó£¬Õâ½Ð×öÇå³ý£¨sweeping£©¡£ÕâÖÖ·½·¨µÄÎÊÌâÔÚÓÚÄÚ´æ»á·Ö³ÉºÃ¶àС¶Î£¬¶øËüÃDz»×ãÒÔÓÃÓÚеĶÔÏ󣬵«ÊÇ×éºÏÆðÀ´È´ºÜ´ó¡£Òò´Ë£¬Ðí¶àgc¿ÉÒÔÖØÐÂ×éÖ¯ÄÚ´æÖеĶÔÏ󣬲¢½øÐÐѹËõ£¨compact£©£¬ÐγɿÉÀûÓõĿռ䡣
Ϊ´Ë£¬gcÐèҪֹͣÆäËûµÄ»î¶¯»î¶¯¡£ÕâÖÖ·½·¨Òâζ×ÅËùÓÐÓëÓ¦ÓóÌÐòÏà¹ØµÄ¹¤×÷Í£Ö¹£¬Ö»ÓÐgcÔËÐС£½á¹û£¬ÔÚÏìÓ¦ÆÚ¼äÔö¼õÁËÐí¶à»ìÔÓÇëÇó¡£ÁíÍ⣬¸ü¸´Ô gc²»¶ÏÔö¼Ó»òͬʱÔËÐÐÒÔ¼õÉÙ»òÕßÇå³ýÓ¦ÓóÌÐòµÄÖжϡ£ÓеÄgcʹÓõ¥Ïß³ÌÍê³ÉÕâÏ×÷£¬ÓеÄÔò²ÉÓöàÏß³ÌÒÔÔö¼ÓЧÂÊ¡£
¼¸ÖÖÀ¬»ø»ØÊÕ»úÖÆ
2.1.±ê¼Ç£Çå³ýÊÕ¼¯Æ÷
ÕâÖÖÊÕ¼¯Æ÷Ê×ÏȱéÀú¶ÔÏóͼ²¢±ê¼Ç¿Éµ½´ïµÄ¶ÔÏó£¬È»ºóɨÃè¶ÑÕ»ÒÔÑ°ÕÒδ±ê¼Ç¶ÔÏó²¢ÊÍ·ÅËüÃǵÄÄÚ´æ¡£ÕâÖÖÊÕ¼¯Æ÷Ò»°ãʹÓõ¥Ï̹߳¤×÷²¢Í£Ö¹ÆäËû²Ù×÷¡£
2.2.±ê¼Ç£Ñ¹ËõÊÕ¼¯Æ÷
ÓÐʱҲ½Ð±ê¼Ç£Çå³ý£Ñ¹ËõÊÕ¼¯Æ÷£¬Óë±ê¼Ç£Çå³ýÊÕ¼¯Æ÷ÓÐÏàͬµÄ±ê¼Ç½×¶Î¡£ÔÚµÚ¶þ½×¶Î£¬Ôò°Ñ±ê¼Ç¶ÔÏó¸´ÖƵ½¶ÑÕ»µÄÐÂÓòÖÐÒÔ±ãѹËõ¶ÑÕ»¡£ÕâÖÖÊÕ¼¯Æ÷ҲֹͣÆäËû²Ù×÷¡£
2.3.¸´ÖÆÊÕ¼¯Æ÷
ÕâÖÖÊÕ¼¯Æ÷½«¶ÑÕ»·ÖΪÁ½¸öÓò£¬³£³ÆΪ°ë¿Õ¼ä¡£Ã¿´Î½öʹÓÃÒ»°ëµÄ¿Õ¼ä£¬jvmÉú³ÉµÄжÔÏóÔò·ÅÔÚÁíÒ»°ë¿Õ¼äÖС£gcÔËÐÐʱ£¬Ëü°Ñ¿Éµ½´ï¶ÔÏó¸´ÖƵ½ÁíÒ»°ë¿Õ¼ä£¬´Ó¶øѹËõÁ˶ÑÕ»¡£ÕâÖÖ·½·
Ïà¹ØÎĵµ£º
125
Ìõ³£¼ûµÄ
java
ÃæÊÔ±ÊÊÔÌâ´ó»ã×Ü
1.
³éÏó£º
¡¡¡¡³éÏó¾ÍÊǺöÂÔÒ»¸öÖ÷ÌâÖÐÓ뵱ǰĿ±êÎ޹صÄÄÇЩ·½Ã棬ÒÔ±ã¸ü³ä·ÖµØ×¢ÒâÓ뵱ǰĿ±êÓйصķ½Ãæ¡£³éÏó²¢²»´òËãÁ˽âÈ«²¿ÎÊÌ⣬¶øÖ»ÊÇÑ¡ÔñÆäÖеÄÒ»²¿·Ö£¬ÔÝʱ²»Óò¿·Öϸ½Ú¡£³éÏó°üÀ¨Á½¸ö·½Ã棬һÊǹý³Ì³éÏ󣬶þÊÇÊý¾Ý³éÏó¡£
2.
¼Ì³Ð£º
¡¡¡¡¼Ì³ÐÊÇÒ»ÖÖÁª½áÀàµÄ²ã´ÎģР......
JAVAµÄÉè¼ÆÔÔò
1. ½Ó¿Ú¸ôÀëÔÔò£¨ISP£ºInterface Segregation Principle£©
¶¨Ò壺ʹÓöà¸öרÃŵıÈʹÓõ¥Ò»µÄ×ܽӿÚÒªºÃ¡£Ò²¿ÉÒÔ˵£º½¨Á¢µ¥Ò»½Ó¿Ú£¬²»Òª½¨Á¢Ó·Ö×ÅÓ´óµÄ½Ó¿Ú¡£
ISPµÄÁ½ÖÖ¶¨Ò壺
¡ó “Clients should not be forced to depend upon interfaces that they don't u ......
Java ThreadÓÐÒ»¸ö volatile¹Ø¼ü×Ö£¬Ö÷ÒªÓÃÀ´·ÀÖ¹¶àÏ̷߳ÃÎʹ«¹²±äÁ¿£¬²»Äܼ°Ê±±»ÆäËüÏß³ÌÕýÈ··ÃÎÊ, ¶øÔì³ÉµÄ²»Í¬²½ÎÊÌâ¡£
±ÈÈçThreadA ºÍThreadB ͬʱ·ÃÎÊÒ»¸ö int a = 0; ²¢ÇÒÐ޸ģ¬
¿ÉÄÜ»áÔì³É ThreadA ÐÞ¸Äa±äÁ¿ºó£¬ThreadB·ÃÎÊa±äÁ¿»¹ÊÇÔÀ´µÄÖµ¡£
&n ......
ÕâƪÎÄÕºÍSUN¹«Ë¾ÌṩµÄ½Ì³ÌÀàËÆ£¬Öмä¶àÁËÒ»¸öHelloImplµÄjavaÎļþ£¬±àÒëʱµÄÃüÁîÒ²¾ÍÓÐËù²»Í¬ÁË
ÔÀ´µÄÃüÁîΪ£ºServer javac HelloServer.java HelloApp/*.java
......
JavaÓʼþȺ·¢Æ÷
¹¦ÄÜ˵Ã÷£º
1¡¢ÅúÁ¿Ñ»··¢ËÍÓʼþ
2¡¢·¢ËÍHTMLÎļþ£¬´ý·¢Ë͵ÄÓʼþÒÔhtmµÄ¸ñʽ´æ·Å£¬¿ÉÒÔÊÇÍøÂçÉϵÄhtmÎļþ£¬¿ÉÒÔÊDZ¾µØµÄhtmÎļþ
3¡¢¿ÉÒÔÖ¸¶¨·¢Ë͸½¼þµÄĿ¼£¬ÏµÍ³»á¼ÓÔØÖ¸¶¨Ä¿Â¼µÄÈ«²¿¸½¼þÒ»Æð·¢ËÍ
4¡¢·¢ËÍÓʼþÒÔtxtÎļþ±£´æ£¬Ã¿Ðб£´æÒ»¸öÓʼþ ......