SDL_RWLock * SDL_CreateRWLock(void);
読取/書込ロックは複数のスレッドから更新頻度の低い資源にアクセスする場合に便利である. 全てのスレッドからの読取ロックは平行して行える. あるスレッドからの書込ロックは排他的である.
適切な状況ならば, 読取/書込ロックは仮にデータを変更しない場合でも一度に1つのスレッドしか進行しないミューテックスよりも効率的である.
新しく生成された読取/書込ロックは, 全てロック解除の状態から始まる.
他のスレッドで既に書込ロックされている間は, SDL_LockRWLockForReading()またはSDL_LockRWLockForWritingから戻らない. ブロックせずにロックを試みたい場合はSDL_TryLockRWLockForReading()またはSDL_TryLockRWLockForWriting()を使うこと.
SDLの読取/書込ロックは読取ロックのみリエントラント(再入可能)である. 読取/書込ロックの公平, アクセスのFIFOは保証されていない. 書込ロックの優先は保証されていない. 読取専用と書込のアクセスが同時に同一のスレッドからあった場合, 読取/書込ロックは行われない(ロック解除しなければ読取ロックは書込ロックに昇格しない).