/** * @return #hipSuccess, #hipErrorInvalidResourceHandle */ hipError_t hipStreamDestroy(hipStream_t stream) { HIP_INIT_API(stream); hipError_t e = hipSuccess; //--- Drain the stream: if (stream == NULL) { ihipDevice_t *device = ihipGetTlsDefaultDevice(); device->locked_syncDefaultStream(true/*waitOnSelf*/); } else { stream->locked_wait(); e = hipSuccess; } ihipDevice_t *device = stream->getDevice(); if (device) { device->locked_removeStream(stream); delete stream; } else { e = hipErrorInvalidResourceHandle; } return ihipLogStatus(e); }