final class ImplRefManager extends Object
Modifier and Type | Class and Description |
---|---|
(package private) class |
ImplRefManager.ImplRef
A managed reference to a remote object implementation (impl).
|
private class |
ImplRefManager.Reaper
Waits for notifications that weak references in the table have
been cleared (and thus referenced impls have been garbage
collected).
|
Modifier and Type | Field and Description |
---|---|
private boolean |
interruptible
true if reaper thread may be interrupted
|
private Object |
lock
lock guarding all mutable instance state (below).
|
private static Logger |
logger |
private Thread |
reaper
thread to process garbage collected impls
|
private ReferenceQueue |
reapQueue
queue notified when weak refs to impls are cleared
|
private Map<Reference,ImplRefManager.ImplRef> |
weakImplTable
maps WeakKey(impl) to ImplRef(WeakKey(impl))
|
Constructor and Description |
---|
ImplRefManager() |
Modifier and Type | Method and Description |
---|---|
(package private) ImplRefManager.ImplRef |
getImplRef(Remote impl,
Target target)
Returns the ImplRef for the specified impl (creating it if
necessary), registering the supplied target with it.
|
private static final Logger logger
private final ReferenceQueue reapQueue
private final Object lock
private final Map<Reference,ImplRefManager.ImplRef> weakImplTable
private Thread reaper
private boolean interruptible
ImplRefManager.ImplRef getImplRef(Remote impl, Target target)
Copyright 2007-2013, multiple authors.
Licensed under the Apache License, Version 2.0, see the NOTICE file for attributions.