public abstract class AbstractCloseable extends Object implements CloseableTracer, ReferenceOwner
Modifier and Type | Field and Description |
---|---|
protected static boolean |
CHECK_THREAD_SAFETY |
protected static long |
WARN_NS |
INIT
Modifier | Constructor and Description |
---|---|
protected |
AbstractCloseable() |
Modifier and Type | Method and Description |
---|---|
static void |
assertCloseablesClosed() |
void |
clearUsedByThread() |
void |
close()
Close a resource so it cannot be used again.
|
StackTrace |
createdHere() |
static void |
disableCloseableTracing() |
static void |
enableCloseableTracing() |
boolean |
isClosed() |
boolean |
isClosing() |
protected boolean |
isInUserThread() |
protected abstract void |
performClose()
Call close() to ensure this is called exactly once.
|
protected boolean |
performCloseInBackground()
Deprecated.
|
int |
referenceId() |
void |
resetUsedByThread() |
protected boolean |
shouldPerformCloseInBackground() |
protected boolean |
shouldWaitForClosed() |
protected boolean |
threadSafetyCheck(boolean isUsed) |
void |
throwExceptionIfClosed()
Called when a resources needs to be open to use it.
|
void |
throwExceptionIfClosedInSetter() |
String |
toString() |
static void |
unmonitor(Closeable closeable) |
protected void |
waitForClosed() |
protected void |
warnAndCloseIfNotClosed()
Called from finalise() implementations.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
closeQuietly, closeQuietly, notifyClosing
referenceName, temporary
protected static final boolean CHECK_THREAD_SAFETY
protected static final long WARN_NS
public static void enableCloseableTracing()
public static void disableCloseableTracing()
public static void assertCloseablesClosed()
public static void unmonitor(Closeable closeable)
public int referenceId()
referenceId
in interface ReferenceOwner
public StackTrace createdHere()
createdHere
in interface CloseableTracer
public final void close()
close
in interface Closeable
close
in interface AutoCloseable
protected boolean isInUserThread()
protected void waitForClosed()
public void throwExceptionIfClosed() throws IllegalStateException
throwExceptionIfClosed
in interface QueryCloseable
IllegalStateException
- if closedpublic void throwExceptionIfClosedInSetter() throws IllegalStateException
IllegalStateException
protected void warnAndCloseIfNotClosed()
protected abstract void performClose()
public boolean isClosing()
isClosing
in interface QueryCloseable
public boolean isClosed()
isClosed
in interface QueryCloseable
protected boolean shouldPerformCloseInBackground()
@Deprecated protected boolean performCloseInBackground()
protected boolean shouldWaitForClosed()
protected boolean threadSafetyCheck(boolean isUsed)
public void resetUsedByThread()
public void clearUsedByThread()
Copyright © 2021. All rights reserved.