MLE実行コンテキストについて
MLE実行コンテキストは、分離されたスタンドアロンのランタイム環境であり、JavaScriptコードの実行に関連付けられたすべてのランタイム状態を含むように設計されています。ランタイム状態には、グローバル変数と、言語環境の状態が含まれます。
-
動的MLEコンテキストを明示的に作成して使用できる、動的MLE実行
-
MLEモジュールによってエクスポートされたファンクションへのSQLおよびPL/SQLからのコール
動的実行
動的MLEコンテキストのプロパティは、実行コンテキストが作成された時点で使用されている環境によって決定されます。それぞれの動的MLEスニペットに使用される実行コンテキストを明示的に制御でき、それぞれの実行コンテキストで単一のユーザーの代理としてコードが実行されます。
1つのセッション内で作成できる動的MLE実行コンテキストの数や、異なるコード・スニペット間でそれらを共有する方法に制限はありません。JavaScriptのコード・スニペットは、同じ実行コンテキストで実行されている他のコード・スニペットとすべてのグローバル変数を共有します。
MLEモジュール
SQLまたはPL/SQLからのMLEモジュール・コールのコンテキストは、オンデマンドで暗黙的に作成されます。ここでは、コンテキストの作成時点でコール仕様で参照されているMLE環境によってプロパティが決定されます。環境を使用して、言語オプションを指定したり、MLEモジュールをインポート可能にしたりできます。
MLEモジュールは、他のモジュールや動的MLEスニペットと実行コンテキストを共有することはありません。また、同じMLEモジュールのコードが異なるユーザーの代理として実行されるときには、別個の実行コンテキストが使用されます。MLEは、MLEモジュールと環境の組合せごとに専用の実行コンテキストを作成します。異なるモジュールまたは異なる環境を指定する2つのコール仕様は、別個のモジュール・コンテキストで実行されます。
関連項目:
-
MLE環境の詳細は、「MLEモジュールの環境の指定」を参照してください
- 実行コンテキストを使用してランタイム状態の分離を強制する方法の詳細は、「実行コンテキスト」を参照してください
親トピック: JavaScriptのマルチリンガル・エンジンの概要