Try to lock a read/write lock for writing without blocking.
int SDL_TryLockRWLockForWriting(SDL_RWLock *rwlock) SDL_TRY_ACQUIRE(0, rwlock);
rwlock | the rwlock to try to lock |
Returns 0, SDL_RWLOCK_TIMEDOUT
, or -1 on error; call SDL_GetError() for more information.
This works just like SDL_LockRWLockForWriting(), but if the rwlock is not available, this function returns SDL_RWLOCK_TIMEDOUT
immediately.
This technique is useful if you need exclusive access to a resource but don't want to wait for it, and will return to it to try again later.
It is illegal for the owning thread to lock an already-locked rwlock for writing (read-only may be locked recursively, writing can not). Doing so results in undefined behavior.
It is illegal to request a write lock from a thread that already holds a read-only lock. Doing so results in undefined behavior. Unlock the read-only lock before requesting a write lock.
This function is available since SDL 3.0.0.