release0() — netty Function Reference
Architecture documentation for the release0() function in RefCnt.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 7c45a31c_f889_4638_3f00_cf5b0cfdc195["release0()"] a43fdad8_805c_4b48_edc8_5658c1df4216["UnsafeRefCnt"] 7c45a31c_f889_4638_3f00_cf5b0cfdc195 -->|defined in| a43fdad8_805c_4b48_edc8_5658c1df4216 430389be_c1ee_77a2_9ce8_43f5fe849582["throwIllegalRefCountOnRelease()"] 7c45a31c_f889_4638_3f00_cf5b0cfdc195 -->|calls| 430389be_c1ee_77a2_9ce8_43f5fe849582 f09c698a_6bc7_6ced_8737_2b648c1562a3["release0()"] 7c45a31c_f889_4638_3f00_cf5b0cfdc195 -->|calls| f09c698a_6bc7_6ced_8737_2b648c1562a3 style 7c45a31c_f889_4638_3f00_cf5b0cfdc195 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
common/src/main/java/io/netty/util/internal/RefCnt.java lines 443–457
private static boolean release0(RefCnt instance, int decrement) {
int curr, next;
do {
curr = PlatformDependent.getInt(instance, VALUE_OFFSET);
if (curr == decrement) {
next = 1;
} else {
if (curr < decrement || (curr & 1) == 1) {
throwIllegalRefCountOnRelease(decrement, curr);
}
next = curr - decrement;
}
} while (!PlatformDependent.compareAndSwapInt(instance, VALUE_OFFSET, curr, next));
return (next & 1) == 1;
}
Domain
Subdomains
Source
Frequently Asked Questions
What does release0() do?
release0() is a function in the netty codebase, defined in common/src/main/java/io/netty/util/internal/RefCnt.java.
Where is release0() defined?
release0() is defined in common/src/main/java/io/netty/util/internal/RefCnt.java at line 443.
What does release0() call?
release0() calls 2 function(s): release0, throwIllegalRefCountOnRelease.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free