次のプログラムのエントリ部は、最初にプログラムを実行したスレッドだけがデータを初期化し、それ以後のすべてのスレッドはその初期化済みのデータを利用できることを保証します。
if first-time = 0 call "cbl_thread_prog_lock" if first-time = 0 initialize my-data-division move 1 to first-time end-if call "cbl_thread_prog_unlock" end-if
first-time 変数を 2 度チェックしていることに注意してください。最初のチェックは、変数がすでに初期化されていることがわかっている場合に、プログラムをロックするオーバーヘッドを回避するための最適化です。