Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.Opens in a new tab

For information on migrating to InterSystems IRISOpens in a new tab, see Why Migrate to InterSystems IRIS?

グローバル

Caché の グローバル は、他言語のグローバルと意味が異なります。他言語のグローバル変数は、モジュール内にある複数のサブルーチンと関数にグローバルです。Caché のグローバル変数は、ディスクに保存されるため、すべてのプロセスに対してグローバルです。以下はその概要です。

用語 意味 アクセス範囲
グローバル ディスク上の永続配列 ディスクにアクセスできるすべての Basic 処理と、すべてのルーチンはこの変数にアクセスできます。 ^A
プロセス・プライベート・グローバル ディスク上の永続配列 グローバルですが、この変数にアクセスできるのは、プロセスで実行されたルーチンに限られます。プロセス・メモリの制限を超えて増大可能なモジュール・レベル変数のように動作します。 ^||A
モジュール・レベル (グローバル) 変数 Basic ルーチン内、サブルーチン外、関数で定義される変数 モジュール内のサブルーチンと関数はこの変数にアクセスできます。 A
プライベート (ローカル) 変数 サブルーチンあるいは関数で定義される変数 変数を定義するサブルーチンあるいは関数のみがこの変数にアクセスできます。 A

Basic のグローバルを理解するのは非常に簡単です。これまで学習してきた配列はすべてグローバルです。配列は宣言する必要がなく、ディスクにデータを格納する場合、(グローバル名に “^” を使用して) 割り当て文を使用するだけで済みます。前述のアニメーションで学習したように、ディスクにツリー構造を構築します。また、ディスク容量は値が割り当てられた場合にのみ必要です。3 つの Erase* 関数は、グローバルのパートやセクションを消去します。その際は、グローバル全体 (何百万のレコードを持つこともあります) を瞬時に消去します。通常の変数で使用する関数やコマンドのほとんどは、グローバルで同様に機能します。唯一の違いは、グローバル名の場合、先頭に “^” (キャレット) または “^||” 文字を使用することです。

FeedbackOpens in a new tab