| Previous | Next |
| DXGI_ERROR_DEVICE_RESET | DXGI_ERROR_FRAME_STATISTICS_DISJOINT |
DXGI_ERROR_WAS_STILL_DRAWING
DXGI_ERROR_WAS_STILL_DRAWING means that the GPU was busy when the call was made and the requested operation was neither executed nor queued. It is normally a flow-control result for a call path that intentionally avoids waiting, not evidence that the device has been lost.
Handle it deliberately
- Do not spin in a tight retry loop on the rendering thread; it can consume CPU without letting the GPU make useful progress.
- Reschedule the work, wait through the synchronization primitive appropriate to the API, or skip a frame only when that is acceptable for the product.
- Keep ownership and lifetime valid until the deferred operation is actually resubmitted or discarded.
Separate it from a hung device
A busy GPU can still make progress. If the code changes to DXGI_ERROR_DEVICE_REMOVED, DXGI_ERROR_DEVICE_HUNG, or DXGI_ERROR_DEVICE_RESET, switch to device-loss recovery instead of retaining the old queueing policy.
Microsoft: DXGI error codes · Microsoft: device-loss handling
Looking for a different code? Search another status or error code.