close method
void
close()
Gracefully closes the session and releases native resources.
Safe to call multiple times -- subsequent calls are no-ops.
Implementation
void close() {
if (_closed) return;
_closed = true;
// ⛔ SHIM-OWNED BLOCK: zd_open_session_async malloc'd it, so the shim frees
// it, inside zd_session_close_drop. A calloc.free here would be a
// cross-allocator free -- the exact defect the allocator-side-frees rule
// exists to prevent.
bindings.zd_session_close_drop(_ptr.cast());
}