MCPcopy Create free account
hub / github.com/java-native-access/jna / CleanerRef

Class CleanerRef

src/com/sun/jna/internal/Cleaner.java:101–135  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

99 }
100
101 private static class CleanerRef extends PhantomReference<Object> implements Cleanable {
102 private final Cleaner cleaner;
103 private final Runnable cleanupTask;
104 private CleanerRef previous;
105 private CleanerRef next;
106
107 public CleanerRef(Cleaner cleaner, Object referent, ReferenceQueue<? super Object> q, Runnable cleanupTask) {
108 super(referent, q);
109 this.cleaner = cleaner;
110 this.cleanupTask = cleanupTask;
111 }
112
113 @Override
114 public void clean() {
115 if(cleaner.remove(this)) {
116 cleanupTask.run();
117 }
118 }
119
120 CleanerRef getPrevious() {
121 return previous;
122 }
123
124 void setPrevious(CleanerRef previous) {
125 this.previous = previous;
126 }
127
128 CleanerRef getNext() {
129 return next;
130 }
131
132 void setNext(CleanerRef next) {
133 this.next = next;
134 }
135 }
136
137 public static interface Cleanable {
138 public void clean();

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…