comparison src/luan/lib/webserver/handlers/DomainHandler.java @ 1400:221eedb0f54e

fix inner class gc bug
author Franklin Schmidt <fschmidt@gmail.com>
date Fri, 13 Sep 2019 05:05:51 -0600
parents 643cf1c37723
children ef1620aa99cb
comparison
equal deleted inserted replaced
1399:38a1c1b4279a 1400:221eedb0f54e
1 package luan.lib.webserver.handlers; 1 package luan.lib.webserver.handlers;
2 2
3 import java.io.Closeable; 3 import java.io.Closeable;
4 import java.io.IOException; 4 import java.io.IOException;
5 import java.lang.ref.Reference; 5 import java.lang.ref.Reference;
6 import java.lang.ref.WeakReference;
6 import java.lang.ref.SoftReference; 7 import java.lang.ref.SoftReference;
7 import java.lang.ref.ReferenceQueue; 8 import java.lang.ref.ReferenceQueue;
8 import java.util.Map; 9 import java.util.Map;
9 import java.util.HashMap; 10 import java.util.HashMap;
10 import luan.lib.logging.Logger; 11 import luan.lib.logging.Logger;
29 } 30 }
30 } 31 }
31 32
32 private final ReferenceQueue<Ref> queue = new ReferenceQueue<Ref>(); 33 private final ReferenceQueue<Ref> queue = new ReferenceQueue<Ref>();
33 34
34 private class MyReference extends SoftReference<Ref> { 35 private class MyReference extends WeakReference<Ref> {
35 private Handler handler; 36 private Handler handler;
36 37
37 private MyReference(Ref r) { 38 private MyReference(Ref r) {
38 super(r,queue); 39 super(r,queue);
39 this.handler = r.handler; 40 this.handler = r.handler;