PostgreSQL 9.0.0文書 | ||||
---|---|---|---|---|
前のページ | 巻戻し | 第 40章PL/Tcl - Tcl手続き型言語 | 早送り | 次のページ |
ある関数の複数の呼び出し間で保持される、もしくは、異なる関数間で共有されるような、いくつかのグローバルデータを持つことが有意な場合があります。 あるセッション内で実行される全てのPL/Tcl関数は同一の安全なTclインタプリタを共有しますので、これは簡単に実現できます。 ですから、全てのグローバルなTcl変数は、全てのPL/Tcl関数呼び出しでアクセスすることができ、そして、そのSQLセッションの間持続します (PL/TclU関数も同様にグローバルデータを共有しますが、異なるインタプリタ内で実行されますので、PL/Tcl関数間で通信することができません)。
PL/Tcl関数が予期しない相互作用に巻き込まれないようにするために、upvar
コマンドを使用することによって、各関数でアクセスできるグローバルな配列を作成することができます。
この変数のグローバル名は関数の内部名で、ローカル名はGDとなります。
関数の永続局所データではGDを使用することを推奨します。
複数の関数で共用させる予定の値に対してのみ、通常のTclのグローバル変数を使用してください。
後述のspi_execp
の例の中にGDの使用例があります。