Korzystanie z ReferenceQueue i WeakReference

Chcę poprawnie zamknąć obiekt Zamknij, gdy nie ma już w nim odniesienia do innych wątków.

Napisałem mały test, ale po kolejkowaniu obiektu metoda get zwraca wartość null, tj. Metoda odpytywania zwraca właściwy obiekt, który nie ma odniesienia.

  public static void main(String[] args)
  {
   ReferenceQueue<Closeable> reaped = new ReferenceQueue<Closeable>();
   Closeable s = <SOME CLOSEABLE IMPL>;
   WeakReference<Closeable> ws = new WeakReference<Closeable>(s, reaped);
   s = null;

   System.gc();
   Closeable ro = (Closeable)reaped.poll().get();
   ro.close();
  }

Z góry dziękuję. Każda pomoc zostanie doceniona.

questionAnswers(1)

yourAnswerToTheQuestion