これは InterSystems FAQ サイトの記事です。
InterSystems製品では、複数のプロセスが同時に同じデータにアクセスする場合、排他制御を行うためにロックを使用できます。
ロックは、データの更新を正しく行い整合性を保つための仕組みで、あるデータに対する更新処理を制御するために使用します。
ロックを操作するには、LOCK(L)というコマンドが使用できます。
こちらの記事では、InterSystems製品で使用できるロックの種類、LOCKコマンドの使い方をご紹介します。
★ロックの種類
| 増分 | 単純 | |
| 排他(既定) | LOCK +^A | LOCK ^A |
| 共有 | LOCK +^A#"S" | LOCK ^A#"S" |
プラス記号 (+) をつけると、増分ロックになります。1つのプロセスで複数の増分ロックを追加できます。
プラス記号 (+) をつけないと、単純ロックになります。こちらは、1つのプロセスで1つのロックのみ所有できます。単純ロックコマンド実行時に既存のロックがあった場合、そのプロセスが保持している既存のロックをすべて削除し、新しいロックを追加します。
.png)