Skip to content

Commit d0e4012

Browse files
committed
better resource logging
1 parent d18b208 commit d0e4012

1 file changed

Lines changed: 13 additions & 8 deletions

File tree

src/main/java/software/amazon/awssdk/crt/CrtResource.java

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -124,17 +124,16 @@ public CrtResource() {
124124
* @param resource The resource to add a reference to
125125
*/
126126
public void addReferenceTo(CrtResource resource) {
127-
resource.addRef();
128-
129-
synchronized(this) {
130-
referencedResources.add(resource);
131-
}
132-
133127
if (debugNativeObjects) {
134128
Log.log(ResourceLogLevel, Log.LogSubject.JavaCrtResource,
135129
String.format("%s(%d) is adding a reference to %s(%d).",
136130
this.getClass().getCanonicalName(), id, resource.getClass().getCanonicalName(), resource.id));
137131
}
132+
133+
resource.addRef();
134+
synchronized(this) {
135+
referencedResources.add(resource);
136+
}
138137
}
139138

140139
/**
@@ -304,6 +303,10 @@ public void close() {
304303
decRef("close() called");
305304
}
306305

306+
public void close(String desc) {
307+
decRef(desc);
308+
}
309+
307310
/**
308311
* Decrements the reference count to this resource. If zero is reached, begins (and possibly completes) the resource's
309312
* cleanup process.
@@ -375,12 +378,14 @@ public void decRef() {
375378
*/
376379
protected void releaseReferences() {
377380
if (debugNativeObjects) {
378-
Log.log(ResourceLogLevel, Log.LogSubject.JavaCrtResource, String.format("%s(%d) closing all referenced objects", this.getClass().getCanonicalName(), id));
381+
Log.log(ResourceLogLevel, Log.LogSubject.JavaCrtResource,
382+
String.format("%s(%d) closing %d referenced objects",
383+
this.getClass().getCanonicalName(), id, referencedResources.size()));
379384
}
380385

381386
synchronized(this) {
382387
for (CrtResource resource : referencedResources) {
383-
resource.decRef(this);
388+
resource.decRef(String.format("%s releaseReferences()", this.getClass().getCanonicalName()));
384389
}
385390

386391
referencedResources.clear();

0 commit comments

Comments
 (0)