use super::CudaQueuedHtj2kCleanup;
impl Drop for CudaQueuedHtj2kCleanup {
fn drop(&mut self) {
if self.pool_reuse_guard.is_some() {
let outcome = self.context.synchronize_for_resource_release();
if outcome.completion_established() {
let _ = self.release_after_stream_completion();
} else {
self.abandon_resources();
}
}
}
}