WithLock
WithLock[LocalSymbol["name"],expr]
局所シンボル name をロックして expr を評価した後で,その局所シンボルを解放する.
WithLock[var,expr]
共有変数 var をロック,expr を評価し,共有変数を解放する.
詳細とオプション
- WithLockはFileまたはLocalSymbolを作ることでロックする.WithLockはFileまたはLocalSymbolを削除することで解放する.
- WithLockは,ロックオブジェクトがすでにロックされている場合はロックが解放されるまで待つ.
- ロックはアトミックである.最大で1つのプロセスしかオブジェクトをロックできないので,そのプロセスが expr を独占的に評価できる.
- WithLockは属性HoldAllを持つ.
- 次は,使用可能なオプションである.
-
TimeConstraint Infinity ロックが使用可能になるまで待つ時間 ExpirationDate None ロックがいつ期限切れになるか PersistenceTime Infinity ロックが有効である期間 - TimeConstraintの時間内でロックが得られなければ,WithLockは$TimedOutを返し,expr の評価は行わない.
- 有効期限または寿命に達したロックは,それをロックしようとする次のWithLockによってアンロックされる.ExpirationDateは有効期限の絶対日付/時間を与える.PersistenceTimeは相対的な時間を与える.
- WithLock[var,expr]は並列サブカーネル間のロックに共有変数を使う.これはCriticalSection[var,expr]に等しい.
- 異なるコンピュータで使用される際,ロックファイルはWithLockが実行されているすべてのコンピュータが使用可能な共有ファイルシステムになければならない.
例題
すべて開くすべて閉じる例 (2)
スコープ (3)
オプション (3)
特性と関係 (2)
Wolfram Research (2021), WithLock, Wolfram言語関数, https://reference.wolfram.com/language/ref/WithLock.html.
テキスト
Wolfram Research (2021), WithLock, Wolfram言語関数, https://reference.wolfram.com/language/ref/WithLock.html.
CMS
Wolfram Language. 2021. "WithLock." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/WithLock.html.
APA
Wolfram Language. (2021). WithLock. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/WithLock.html