(rontolisp) docs
← 関数

rontolisp:mutex-acquire

(rontolisp:mutex-acquire mutex)

呼び出しスレッドが mutex(rontolisp:make-mutex が作成)を 保持するまでブロックし、その mutex を返します。通常は rontolisp:with-mutex を使ってください。ボディが エラーをシグナルして脱出した場合でもロックを解放します。対応する rontolisp:mutex-release がスキップされた素の mutex-acquire は、ロックを永久に保持したままにします。

ロックは再入可能なので、すでに保持しているスレッドは即座に再獲得でき、獲得回数分だけ解放 する必要があります。両方の WASM バックエンドではスレッドは 1 つだけなので、これは引数を 返すだけの no-op です。

制限

  • 非ブロッキング獲得やタイムアウト付き獲得はありません。
  • mutex ハンドルでない値はエラーです。