release0() — netty Function Reference
Architecture documentation for the release0() function in RefCnt.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD f09c698a_6bc7_6ced_8737_2b648c1562a3["release0()"] e71c7596_f8e0_1394_7485_74fd2ca83bf0["AtomicRefCnt"] f09c698a_6bc7_6ced_8737_2b648c1562a3 -->|defined in| e71c7596_f8e0_1394_7485_74fd2ca83bf0 f2601aa0_4731_5bcb_b1a1_5c76b00280c1["release0()"] f2601aa0_4731_5bcb_b1a1_5c76b00280c1 -->|calls| f09c698a_6bc7_6ced_8737_2b648c1562a3 7c45a31c_f889_4638_3f00_cf5b0cfdc195["release0()"] 7c45a31c_f889_4638_3f00_cf5b0cfdc195 -->|calls| f09c698a_6bc7_6ced_8737_2b648c1562a3 b5c2ce00_3bce_c89b_b57a_5d368d2744bb["release()"] b5c2ce00_3bce_c89b_b57a_5d368d2744bb -->|calls| f09c698a_6bc7_6ced_8737_2b648c1562a3 a224abec_8e5f_9344_ee42_9f6f016e1b28["release()"] a224abec_8e5f_9344_ee42_9f6f016e1b28 -->|calls| f09c698a_6bc7_6ced_8737_2b648c1562a3 346079bc_77d3_5e01_539a_40fefa12f03c["release()"] 346079bc_77d3_5e01_539a_40fefa12f03c -->|calls| f09c698a_6bc7_6ced_8737_2b648c1562a3 430389be_c1ee_77a2_9ce8_43f5fe849582["throwIllegalRefCountOnRelease()"] f09c698a_6bc7_6ced_8737_2b648c1562a3 -->|calls| 430389be_c1ee_77a2_9ce8_43f5fe849582 f2601aa0_4731_5bcb_b1a1_5c76b00280c1["release0()"] f09c698a_6bc7_6ced_8737_2b648c1562a3 -->|calls| f2601aa0_4731_5bcb_b1a1_5c76b00280c1 style f09c698a_6bc7_6ced_8737_2b648c1562a3 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
common/src/main/java/io/netty/util/internal/RefCnt.java lines 281–295
private static boolean release0(RefCnt instance, int decrement) {
int curr, next;
do {
curr = instance.value;
if (curr == decrement) {
next = 1;
} else {
if (curr < decrement || (curr & 1) == 1) {
throwIllegalRefCountOnRelease(decrement, curr);
}
next = curr - decrement;
}
} while (!UPDATER.compareAndSet(instance, 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 281.
What does release0() call?
release0() calls 2 function(s): release0, throwIllegalRefCountOnRelease.
What calls release0()?
release0() is called by 5 function(s): release, release, release, release0, release0.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free