public interface GracefulAutoCloseable
extends java.lang.AutoCloseable
AutoCloseable
to add graceful closure semantics.Modifier and Type | Method and Description |
---|---|
default void |
closeGracefully()
Used to close/shutdown a resource, similar to
AutoCloseable.close() , but attempts to cleanup state before
abruptly closing. |
default void closeGracefully() throws java.lang.Exception
AutoCloseable.close()
, but attempts to cleanup state before
abruptly closing. This provides a hint that implementations can use to stop accepting new work and finish in
flight work. This method is implemented on a "best effort" basis and may be equivalent to AutoCloseable.close()
.
Note: Implementations may or may not apply a timeout for this operation to complete, if a caller does not
want to wait indefinitely, and are unsure if the implementation applies a timeout, it is advisable to apply a
timeout and force a call to AutoCloseable.close()
.
java.lang.Exception
- if graceful closure failed.