目次 - SDL 3.0 API(機能別) - 再生と録音 - SDL_LockAudioStream

SDL_LockAudioStream

オーディオストリームをアクセスの直列化のためロックする

ヘッダ

SDL3/SDL_audio.h

構文

bool SDL_LockAudioStream(SDL_AudioStream *stream);

引数

SDL_AudioStream *streamロックするオーディオストリーム

戻り値

(bool) 成功のとき真, 失敗のとき偽を戻す. SDL_GetError()を呼んで詳細を知ることができる.

詳細

SDL_AudioStreamには内部にミューテックスがあり, それを使用してデータ構造を他のスレッドとの衝突から保護している. この関数は, ストリームにコールバックを登録したとき有用なため, アプリケーションがそのミューテックスでロックすることを可能にする.

ストリームが内部でこのロックを管理しているため, ほとんどの場合, この関数を使用してロックする必要はない. しかし, このロックはどのスレッドからもいつでも実行される可能性のあるコールバック中に行われるため, アプリケーションがコールバックと共有するデータを保護する必要がある場合は, ストリームをロックするとロック中はコールバックが実行されていないことを保証できる.

この関数は内部ロックのための単なるSDL_LockMutexのラッパーであり, 全ての特性は同じ(再帰的なロックが認められているなど)である.

スレッドセーフ

この関数はどのスレッドからも安全に呼べる.

バージョン

SDL 3.2.0以降

関連項目

SDL Wikiへのリンク

SDL_LockAudioStream - SDL Wiki