CriticalSection[var,expr]
並列計算のためのロック var を取得し,expr を評価し,ロック var を解放する.
CriticalSection[{var1,var2,…},expr]
すべての変数 variを同時にロックする.
CriticalSection
CriticalSection[var,expr]
並列計算のためのロック var を取得し,expr を評価し,ロック var を解放する.
CriticalSection[{var1,var2,…},expr]
すべての変数 variを同時にロックする.
詳細
- 任意の並列カーネル上で同時実行できる同じロック変数の危険域が最高で1つ許容される.
- ロックとして使われる変数はマスターカーネルの値を持っていてはならない.
- WithLock[var,expr]はCriticalSection[var,expr]に等しい.
例題
すべて開く すべて閉じる例 (5)
アプリケーション (1)
CriticalSectionを使ってコードセクション全体を原子的にする:
特性と関係 (1)
これより効率は下がるが,共有変数と危険域を使うこともできる:
WithLockはCriticalSectionがシンボルに動作するのと同じように動作する:
関連するガイド
-
▪
- 並列計算におけるリソースの共有 ▪
- 並列計算 ▪
- 並行性
テキスト
Wolfram Research (2008), CriticalSection, Wolfram言語関数, https://reference.wolfram.com/language/ref/CriticalSection.html (2020年に更新).
CMS
Wolfram Language. 2008. "CriticalSection." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2020. https://reference.wolfram.com/language/ref/CriticalSection.html.
APA
Wolfram Language. (2008). CriticalSection. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/CriticalSection.html
BibTeX
@misc{reference.wolfram_2025_criticalsection, author="Wolfram Research", title="{CriticalSection}", year="2020", howpublished="\url{https://reference.wolfram.com/language/ref/CriticalSection.html}", note=[Accessed: 22-April-2026]}
BibLaTeX
@online{reference.wolfram_2025_criticalsection, organization={Wolfram Research}, title={CriticalSection}, year={2020}, url={https://reference.wolfram.com/language/ref/CriticalSection.html}, note=[Accessed: 22-April-2026]}