diff --git a/common/src/main/java/io/netty/util/ReferenceCountUtil.java b/common/src/main/java/io/netty/util/ReferenceCountUtil.java index cdcefb8e05..8f96874548 100644 --- a/common/src/main/java/io/netty/util/ReferenceCountUtil.java +++ b/common/src/main/java/io/netty/util/ReferenceCountUtil.java @@ -131,6 +131,14 @@ public final class ReferenceCountUtil { return msg; } + /** + * Returns reference count of a {@link ReferenceCounted} object. If object is not type of + * {@link ReferenceCounted}, {@code -1} is returned. + */ + public static int refCnt(Object msg) { + return msg instanceof ReferenceCounted ? ((ReferenceCounted) msg).refCnt() : -1; + } + /** * Releases the objects when the thread that called {@link #releaseLater(Object)} has been terminated. */