29.3 カートリッジ・サービス — メモリー・サービス
カートリッジ・サービスのメモリー・サービス関数をリストし、説明します。
表29-2は、この項で説明しているメモリー・サービス関数を示しています。
表29-2 メモリー・サービス関数
| 関数 | 用途 |
|---|---|
|
ユーザー期間を開始します。 |
|
|
ユーザー期間を終了します。 |
|
|
指定の継続時間から指定サイズのメモリーを割り当てます。 |
|
|
メモリー・チャンクを解放します。 |
|
|
メモリー・チャンクをサイズ変更します。 |
関連項目:
これらの関数の使用方法の詳細は、『Oracle Databaseデータ・カートリッジ開発者ガイド』を参照してください
29.3.1 OCIDurationBegin()
ユーザー期間を開始します。
用途
ユーザー期間を開始します。
構文
sword OCIDurationBegin ( OCIEnv *env,
OCIError *err,
const OCISvcCtx *svc,
OCIDuration parent,
OCIDuration *duration );パラメータ
- env (IN/OUT)
-
OCI環境ハンドルです。これは、カートリッジ・サービスに対して
NULLとして渡されます。 - err (IN/OUT)
-
OCIエラー・ハンドルです。エラーがある場合は、
errに記録され、OCI_ERRORが戻されます。OCIErrorGet()のコールによって診断情報を取得できます。 - svc (IN)
-
OCIサービス・コンテキスト・ハンドルです。
- parent (IN)
-
親の継続時間の時間番号です。次のいずれかです。
-
以前に作成されたユーザー期間
-
OCI_DURATION_STATEMENT -
OCI_DURATION_SESSION
コメント
この関数によってユーザー期間が開始されます。ユーザーは複数のアクティブなユーザー期間を同時に利用できます。ユーザー期間をネストする必要はありません。durationパラメータは、このコールによって作成された期間を識別するための一意の番号を戻すために使用します。
環境パラメータとサービス・コンテキスト・パラメータの両方をNULLにすることはできません。
関連トピック
29.3.2 OCIDurationEnd()
ユーザー期間を終了します。
用途
ユーザー期間を終了します。
構文
sword OCIDurationEnd ( OCIEnv *env,
OCIError *err,
const OCISvcCtx *svc,
OCIDuration duration );パラメータ
コメント
この関数によってユーザー期間が終了します。
環境パラメータとサービス・コンテキスト・パラメータの両方をNULLにすることはできません。
29.3.3 OCIMemoryAlloc()
指定の継続時間から指定サイズのメモリーを割り当てます。
用途
指定の継続時間から指定サイズのメモリーを割り当てます。
構文
sword OCIMemoryAlloc( void *hndl,
OCIError *err,
void **mem,
OCIDuration dur,
ub4 size,
ub4 flags );パラメータ
- hndl (IN)
-
durがOCI_DURATION_PROCESSの場合、OCI環境ハンドル(OCIEnv *)で、それ以外の場合はユーザー・セッション・ハンドル(OCISession *)です。 - err (IN)
-
エラー・ハンドルです。
- mem (OUT)
-
割り当てられたメモリーです。
- dur (IN)
-
以前に作成されたユーザー期間または次の値のいずれかです。
OCI_DURATION_CALLOUTOCI_DURATION_STATEMENTOCI_DURATION_SESSIONOCI_DURATION_PROCESS - size (IN)
-
割り当てられるメモリーのサイズです。
- flags (IN)
-
OCI_MEMORY_CLEAREDビットを設定して、消去されたメモリーを取得します。
コメント
エージェントのコールアウトの継続時間(外部プロシージャ継続時間)にメモリーを割り当てるには、OCIExtProcAllocCallMemory()またはdurをOCI_DURATION_CALLOUTとして指定するOCIMemoryAlloc()を使用します。
戻り値
エラー・コードを戻します。
関連トピック
29.3.4 OCIMemoryFree()
メモリー・チャンクを解放します。
用途
メモリー・チャンクを解放します。
構文
sword OCIMemoryFree ( void *hndl,
OCIError *err,
void *mem );パラメータ
戻り値
エラー・コードを戻します。
関連トピック