public final class ReferenceCountUtil
extends java.lang.Object
ReferenceCounted
。
Modifier and Type | Method and Description |
---|---|
static int |
refCnt(java.lang.Object msg)
返回 ReferenceCounted 对象的引用计数。
|
static boolean |
release(java.lang.Object msg)
试着拨打 ReferenceCounted.release() 如果指定的消息实现ReferenceCounted 。
|
static boolean |
release(java.lang.Object msg, int decrement)
试着拨打 ReferenceCounted.release(int) 如果指定的消息实现ReferenceCounted 。
|
static <T> T |
releaseLater(T msg)
已过时。
这可能会引入大量的内存使用情况,所以通常最好手动释放对象。
|
static <T> T |
releaseLater(T msg, int decrement)
已过时。
这可能会引入大量的内存使用情况,所以通常最好手动释放对象。
|
static <T> T |
retain(T msg)
试着拨打 ReferenceCounted.retain() 如果指定的消息实现ReferenceCounted 。
|
static <T> T |
retain(T msg, int increment)
试着拨打 ReferenceCounted.retain(int) 如果指定的消息实现ReferenceCounted 。
|
static void |
safeRelease(java.lang.Object msg)
试着拨打 ReferenceCounted.release() 如果指定的消息实现ReferenceCounted 。
|
static void |
safeRelease(java.lang.Object msg, int decrement)
试着拨打 ReferenceCounted.release(int) 如果指定的消息实现ReferenceCounted 。
|
static <T> T |
touch(T msg)
试图调用 ReferenceCounted.touch() 如果指定的消息实现ReferenceCounted 。
|
static <T> T |
touch(T msg, java.lang.Object hint)
试图调用 ReferenceCounted.touch(Object) 如果指定的消息实现ReferenceCounted 。
|
public static <T> T retain(T msg)
ReferenceCounted.retain()
如果指定的消息实现ReferenceCounted
。
如果指定的消息不执行ReferenceCounted
,则此方法不执行任何操作。
public static <T> T retain(T msg, int increment)
ReferenceCounted.retain(int)
如果指定的消息实现ReferenceCounted
。
如果指定的消息不执行ReferenceCounted
,则此方法不执行任何操作。
public static <T> T touch(T msg)
ReferenceCounted.touch()
如果指定的消息实现ReferenceCounted
。
如果指定的消息不执行ReferenceCounted
,则此方法不执行任何操作。
public static <T> T touch(T msg, java.lang.Object hint)
ReferenceCounted.touch(Object)
如果指定的消息实现ReferenceCounted
。
如果指定的消息不执行ReferenceCounted
,则此方法不执行任何操作。
public static boolean release(java.lang.Object msg)
ReferenceCounted.release()
如果指定的消息实现ReferenceCounted
。
如果指定的消息不执行ReferenceCounted
,则此方法不执行任何操作。
public static boolean release(java.lang.Object msg, int decrement)
ReferenceCounted.release(int)
如果指定的消息实现ReferenceCounted
。
如果指定的消息不执行ReferenceCounted
,则此方法不执行任何操作。
public static void safeRelease(java.lang.Object msg)
ReferenceCounted.release()
如果指定的消息实现ReferenceCounted
。
如果指定的消息不执行ReferenceCounted
,则此方法不执行任何操作。
与release(Object)
不同,此方法捕获由ReferenceCounted.release()
引发的异常并将其记录下来,而不是将其重新推送给调用者。
通常建议使用release(Object)
,除非您绝对需要吞下异常。
public static void safeRelease(java.lang.Object msg, int decrement)
ReferenceCounted.release(int)
如果指定的消息实现ReferenceCounted
。
如果指定的消息不执行ReferenceCounted
,则此方法不执行任何操作。
与release(Object)
不同,此方法捕获由ReferenceCounted.release(int)
引发的异常并将其记录下来,而不是将其重新推送给调用者。
通常建议使用release(Object, int)
,除非您绝对需要吞下异常。
@Deprecated public static <T> T releaseLater(T msg)
@Deprecated public static <T> T releaseLater(T msg, int decrement)
public static int refCnt(java.lang.Object msg)
ReferenceCounted
对象的引用计数。
如果对象不是ReferenceCounted
的类型,则返回-1
。
Copyright © 2008–2018 The Netty Project. All rights reserved.