(1) GCæ¯åå¾æ¶éçææï¼Gabage Collectionï¼,å
åå¤çæ¯ç¼ç¨äººå容æåºç°é®é¢çå°æ¹ï¼å¿è®°æè
é误çå
ååæ¶ä¼å¯¼è´ç¨åºæç³»ç»çä¸ç¨³å®çè³å´©æºï¼Javaæä¾çGCåè½å¯ä»¥èªå¨çæµå¯¹è±¡æ¯å¦è¶
è¿ä½ç¨åä»èè¾¾å°èªå¨åæ¶å
åçç®çï¼Javaè¯è¨æ²¡ææä¾éæ¾å·²åé
å
åçæ¾ç¤ºæä½æ¹æ³ã
(2) 对äºGCæ¥è¯´ï¼å½ç¨åºåå建对象æ¶ï¼GCå°±å¼å§çæ§è¿ä¸ªå¯¹è±¡çå°åã大å°ä»¥å使ç¨æ
åµãé常ï¼GCéç¨æåå¾çæ¹å¼è®°å½å管çå (heap)ä¸çææ对象ãéè¿è¿ç§æ¹å¼ç¡®å®åªäºå¯¹è±¡æ¯"å¯è¾¾ç"ï¼åªäºå¯¹è±¡æ¯"ä¸å¯è¾¾ç"ãå½GCç¡®å®ä¸äºå¯¹è±¡ä¸º"ä¸å¯è¾¾"æ¶ï¼GCå°±æ责任åæ¶è¿äºå
å空é´ãå¯ä»¥ãç¨åºåå¯ä»¥æå¨æ§è¡System.gc()ï¼éç¥GCè¿è¡ï¼ä½æ¯Javaè¯è¨è§è并ä¸ä¿è¯GCä¸å®ä¼æ§è¡ã
(3) åå¾åæ¶æ¯ä¸ç§å¨æåå¨ç®¡çææ¯ï¼å®èªå¨å°éæ¾ä¸å被ç¨åºå¼ç¨ç对象ï¼å½ä¸ä¸ªå¯¹è±¡ä¸å被å¼ç¨çæ¶å,æç
§ç¹å®çåå¾æ¶éç®æ³æ¥å®ç°èµæºèªå¨åæ¶çåè½ã
(4) System.gc();å°±æ¯å¼å«javaèææºçåå¾åæ¶å¨è¿è¡åæ¶å
åçåå¾ã
(5) å½ä¸åå¨å¯¹ä¸ä¸ªå¯¹è±¡çå¼ç¨æ¶ï¼æ们就åå®ä¸åéè¦é£ä¸ªå¯¹è±¡ï¼é£ä¸ªå¯¹è±¡æå æçåå¨åå
å¯ä»¥è¢«æ¶åï¼å¯éè¿System.gc()æ¹æ³åæ¶ï¼ä½ä¸è¬è¦æä¸åå¼ç¨ç对象æ å¿ä¸ºnull为佳ã
(6) æ¯ä¸ª Java åºç¨ç¨åºé½æä¸ä¸ª Runtime ç±»å®ä¾ï¼ä½¿åºç¨ç¨åºè½å¤ä¸å
¶è¿è¡çç¯å¢ç¸è¿æ¥ãå¯ä»¥éè¿ getRuntime æ¹æ³è·åå½åè¿è¡æ¶ã Runtime.getRuntime().gc();
(7) java.lang.System.gc()åªæ¯java.lang.Runtime.getRuntime().gc()çç®åï¼ä¸¤è
çè¡ä¸ºæ²¡æä»»ä½ä¸åã
(8) å¯ä¸çåºå«å°±æ¯System.gc()åèµ·æ¥æ¯Runtime.getRuntime().gc()ç®åç¹. å
¶å®åºæ¬æ²¡ä»ä¹æºä¼ç¨å¾å°è¿ä¸ªå½ä»¤, å 为è¿ä¸ªå½ä»¤åªæ¯å»ºè®®JVMå®æGCè¿è¡, è¿æå¯è½å®å
¨è¢«æç»ã GCæ¬èº«æ¯ä¼å¨ææ§çèªå¨è¿è¡ç,ç±JVMå³å®è¿è¡çæ¶æº,èä¸ç°å¨ççæ¬æå¤ç§æ´æºè½ç模å¼å¯ä»¥éæ©,è¿ä¼æ ¹æ®è¿è¡çæºå¨èªå¨å»åéæ©,å°±ç®ççææ§è½ä¸çéæ±,ä¹åºè¯¥å»å¯¹GCçè¿è¡æºå¶è¿è¡å¾®è°,èä¸æ¯éè¿ä½¿ç¨è¿ä¸ªå½ä»¤æ¥å®ç°æ§è½çä¼åã
温馨提示:答案为网友推荐,仅供参考