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

InterSystems コールアウト SDK

このドキュメントで取り上げる内容の詳細なリストは、"目次" を参照してください。

InterSystems コールアウト SDK では、システム呼び出しと関数呼び出しを InterSystems IRIS に統合するいくつかの方法を提供しています。

  • $ZF(-100) 関数は、コマンド行インタフェースから行うのと同じように、システム・コマンドを呼び出し、外部プログラムを実行する簡単な方法を提供します。

  • 他の $ZF 関数は、ObjectScript アプリケーションが頻繁に使用する C 関数にアクセスできるようにするさまざまなオプション (後述) を提供します。

Note:

コールアウト SDK は、元来既存の C 関数ライブラリへのアクセスを提供するために設計された比較的古いインターシステムズのテクノロジです。Java、.NET、Python、Node.js などの言語にアクセスする場合は、InterSystems 外部サーバによりもっと簡単で強力な方法が提供されています。

コールアウト SDK は、簡単な OS コマンド行呼び出しの作成から、数百もの関数にアクセスできるようにする関数ライブラリの作成まで、さまざまな目的で使用できます。以下のオプションを使用できます。

外部プログラムを起動する呼び出しを含む、オペレーティング・システムの呼び出しへのアクセス

コールアウト・ライブラリのアクセス。コールアウト・ライブラリは、コールアウト SDK へのフックを含む、ユーザが記述する共有ライブラリ (DLL または SO ファイル) であり、多様な $ZF 関数が実行時にロードして、その関数を呼び出すことができるようにします。コールアウト・ライブラリは通常 C 言語で記述されますが、互換性のある呼び出し規則を持つ言語も使用できます (“互換性のある言語とコンパイラ” を参照)。各 $ZF 関数は、主に、ライブラリの識別方法とメモリへのロード方法が異なります。

  • $ZF() を使用した iriszf コールアウト・ライブラリへのアクセス

    iriszf と呼ばれる特別な共有メモリを作成します。このライブラリが利用可能な場合、事前にライブラリをロードしたり、ライブラリ名を指定したりしなくても、その関数にアクセスできます。

  • $ZF(-3) を使用した単純なライブラリ関数呼び出し

    ライブラリをロードして、ライブラリ・ファイル・パスと関数名を指定することによって関数を呼び出します。使用は簡単ですが、仮想メモリ内で使用できるのは一度に 1 つのライブラリのみです。その他のインタフェースとは異なり、ライブラリ関数を呼び出す前に初期化を行う必要がありません。

  • $ZF(-5) を使用したシステム ID によるライブラリへのアクセス

    一度に複数のライブラリを効率的に維持し、アクセスするために使用できるインタフェースを作成します。同時に複数のライブラリをロードでき、それぞれに必要な処理オーバーヘッドは、$ZF(-3) よりはるかに小さくて済みます。

  • ユーザ・インデックスによるライブラリへのアクセスでの $ZF(-6) の使用

    コールアウト・ライブラリの大規模なセットを処理するための最も効率的なインタフェースを作成します。ライブラリには、グローバルに定義されたインデックス・テーブルを介してアクセスします。インデックスは、InterSystems IRIS のインスタンス内のすべてのプロセスで利用でき、同時に複数のライブラリをメモリに配置できます。

$ZF 関数の概要については “$ZF インタフェースの概要”、すべての $ZF 関数の説明、使用情報、および詳細や例へのリンクは “InterSystems コールアウトのクイック・リファレンス” も参照してください。

FeedbackOpens in a new tab