最近在寫web程序,根據需要寫了一個緩存,用HashMap做的,大概如下public class XXCache{
private HashMap<String,String> cache = new HashMap<>();
...
...
method(){
int i=0;
...
}
}這個web程序run了兩天沒有任何請求,兩條后我去操作這個緩存,其中的數據還在(緩存策略不會清除數據),當然如果不在的話就出問題了。我的問題是為什么這個cache對象不會被JVM垃圾回收掉呢,是不是類對象不會輕易被回收呢,像method方法中的i局部變量是不是用完過后會馬上被回收掉呢?看過JVM相關的垃圾回收機制,當時感覺懂了,不過一看具體問題感覺還是不明白
關于JVM垃圾回收
幕布斯6054654
2018-10-18 21:43:45