MQCBD - コールバック記述子
MQCBD 構造体は、コールバック関数と、キュー・マネージャーによるその使用を制御するオプションを指定するために使用されます。 この構造体は、MQCB 呼び出しの入力パラメーターです。
可用性
MQCBD 構造体は、以下のプラットフォームで使用できます。
AIX®
IBM® i
Linux®
Windows
z/OS®
バージョン
MQCBD の現行バージョンは MQCBD_VERSION_1です。
文字セットとエンコード
MQCBD 内のデータは、 CodedCharSetId キュー・マネージャー属性で指定された文字セットと、MQENC_NATIVE で指定されたローカル・キュー・マネージャーのエンコードになっていなければなりません。 ただし、アプリケーションが MQ MQI クライアントとして実行されている場合、構造体はクライアントの文字セットとエンコードに従っている必要があります。
フィールド
注: 以下の表では、フィールドはアルファベット順ではなく使用順にグループ化されています。 子トピックは、同じ順序に従います。
| フィールド名と説明 | 定数の名前 | 定数の初期値 (存在する場合) |
|---|---|---|
| StrucID (構造 ID) | MQCBD_STRUC_ID | 'CBD¬' |
| Version (構造体のバージョン番号) | MQCBD_VERSION_1 | 1 |
| CallbackType (コールバック関数のタイプ) | MQCBT_MESSAGE_CONSUMER | 1 |
| Options (メッセージ・コンシュームを制御するオプション) | MQCBDO_NONE | 0 |
| CallbackArea (コールバック関数が使用するフィールド) | なし | ヌル・ポインターまたはヌル・ブランク |
| CallbackFunction (関数が API 呼び出しとして呼び出されるかどうか) | なし | ヌル・ポインターまたはヌル・ブランク |
| CallbackName (関数が動的にリンクされたプログラムとして呼び出されるかどうか) | なし | ヌル・ストリングまたはブランク |
| MaxMsgLength(読み取り可能な最長メッセージの長さ) | MQCBD_FULL_MSG_LENGTH | -1 |
注:
|
||
言語ごとの宣言
MQCBD の C 宣言
typedef struct tagMQCBD MQCBD;
struct tagMQCBD {
MQCHAR4 StrucId; /* Structure identifier */
MQLONG Version; /* Structure version number */
MQLONG CallBackType; /* Callback function type */
MQLONG Options; /* Options controlling message
consumption */
MQPTR CallbackArea; /* User data passed to the function */
MQPTR CallbackFunction; /* Callback function pointer */
MQCHAR128 CallbackName; /* Callback name */
MQLONG MaxMsgLength; /* Maximum message length */
};
MQCBD の COBOL 宣言
** MQCBCD structure
10 MQCBD.
** Structure Identifier
15 MQCBD-STRUCID PIC X(4).
** Structure Version
15 MQCBD-VERSION PIC S9(9) BINARY.
** Callback Type
15 MQCBD-CALLBACKTYPE PIC S9(9) BINARY.
** Options
15 MQCBD-OPTIONS PIC S9(9) BINARY.
** Callback User Area
15 MQCBD-CALLBACKAREA POINTER
** Callback Function Pointer
15 MQCBD-CALLBACKFUNCTION FUNCTION-POINTER
** Callback Program Name
15 MQCBD-CALLBACKNAME PIC X(128)
** Maximum Message Length
15 MQCDB-MAXMSGLENGTH PIC S9(9) BINARY.
MQCBD の PL/I 宣言
dcl
1 MQCBD based,
3 StrucId char(4), /* Structure identifier*/
3 Version fixed bin(31), /* Structure version*/
3 CallbackType fixed bin(31), /* Callback function type */
3 Options fixed bin(31), /* Options */
3 CallbackArea pointer, /* User area passed to the function */
3 CallbackFunction pointer, /* Callback Function Pointer */
3 CallbackName char(128), /* Callback Program Name */
3 MaxMsgLength fixed bin(31); /* Maximum Message Length */