Skip to main content

This documentation is for an older version of this product. See the latest version of this content.Opens in a new tab

$ZSTORAGE (ObjectScript)

プロセスに使用可能な最大メモリです。

Synopsis

$ZSTORAGE
$ZS

概要

$ZSTORAGE には、ジョブのプロセス・プライベート・メモリ用の最大メモリ量 (KB 単位) が格納されます。このメモリは、ローカル変数、スタック、他のテーブルに利用できます。このメモリ制限には、ルーチン・オブジェクト・コードのスペースは含まれていません。このメモリは、必要に応じて (例えば配列を割り当てるときなどに) プロセスに割り当てられます。

一度このメモリがプロセスに割り当てられると、通常はプロセスが終了するまで、その割り当ては解除されません。ただし、大量の (例えば 32MB を超える) メモリが使用されてから解放された場合、可能であれば、InterSystems IRIS は割り当て解除されたメモリをオペレーティング・システムに戻します。

$ZSTORAGE を使用して、最大メモリ・サイズを設定することもできます。例えば、以下の文はジョブの最大プロセス・プライベート・メモリを 524288 KB に設定します。

   SET $ZSTORAGE=524288

$ZSTORAGE を変更すると、$STORAGE 特殊変数の初期値が変化します。これはプロセスで使用できる現在メモリ (バイト) です。

  • 最大値 : SET $ZSTORAGE=-1$ZSTORAGE を最大値 2147483647 に設定します。

  • 最小値 : SET $ZSTORAGE=256$ZSTORAGE を最小値 256 に設定します。

  • 既定値 : $ZSTORAGE の既定値は、システム構成設定 [プロセスあたりの最大メモリ (KB)] で設定された値です。管理ポータルで、[システム管理][構成][システム構成][メモリと開始設定] を選択します。[プロセス当たりの最大メモリ(KB)] を変更すると、続いて開始されたプロセスの $ZSTORAGE 値も変更されます。ただし、現在のプロセスの $ZSTORAGE 値には影響を与えません。

$ZSTORAGE の値が、最大値よりも大きいか最小値よりも小さい場合は、自動的に既定の最大値または最小値に設定されます。$ZSTORAGE は整数値に設定されます。InterSystems IRIS では、いかなる小数部も切り捨てられます (指定した場合)。

Note:

オペレーティング・システムによって、実行中のアプリケーションの最大メモリ割り当てに上限が課される場合があります。InterSystems IRIS インスタンスがこのような上限の対象である場合、プロセスは $ZSTORAGE で指定されたメモリの一部を取得できず、その結果 <STORE> エラーが発生することがあります。

以下の例では、$ZSTORAGE を最大値および最小値に設定します。$ZSTORAGE を、最小値より少ない値 (16) に設定しようとすると、自動的に $ZSTORAGE は最小値 (256) に設定されます。

  SET $ZS=256
  WRITE "minimum storage=",$ZS,!
  SET $ZS=16
  WRITE "set to < minimum sets to minimum storage=",$ZS,!
  SET $ZS=-1
  WRITE "maximum storage=",$ZS,!

関連項目

SET コマンド

KILL コマンド

$STORAGE 特殊変数

FeedbackOpens in a new tab