ページの先頭行へ戻る
Interstage Application Server MessageQueueDirector説明書

8.3.10 mqd_getmsg (メッセージを受信する)

機能説明

  メッセージを受信します。メッセージを受信するとカーソルは次のメッセージに移動します。

記述形式

---------------------------------------------------------------------------------------
      #include "mqdapi.h"
      int mqd_getmsg(MQD_MessageQueue *queue, int mode, MQD_MessageHeader *mhbuffer,
                     MQD_MessageBody *mbbuffer, long mblength, MQD_Environment *env)
---------------------------------------------------------------------------------------

パラメタ

queue

  mqd_connectq関数から返されたメッセージキューへのポインタをそのまま指定します。

mode

  メッセージがない場合の対処を指定します。

    MQD_Q_MODE_ASYNC: 非同期モード

メッセージがない場合には、すぐに復帰します。

    MQD_Q_MODE_SYNC: 同期モード

メッセージが到着するまで待ちます。

mhbuffer

  メッセージヘッダを入力する領域へのポインタを指定します。領域は発行元が用意します。メッセージヘッダ(MQD_MessageHeader構造体)の詳細については、“8.3.29 パラメタの詳細説明”を参照してください。

mbbuffer

  メッセージ本体を入力する領域へのポインタを指定します。領域は発行元が用意します。メッセージ本体(MQD_MessageBody構造体)の詳細については、“8.3.29 パラメタの詳細説明”を参照してください。

mblength

  mbbufferで指定した領域の長さを指定します。

env

  例外処理のための復帰情報へのポインタを指定します。エラー詳細コードに以下の値が返されます。復帰情報(MQD_Environment構造体)の詳細については、“8.4 復帰情報の説明”を参照してください。

  MQD_ERR_SYNTAX,        MQD_ERR_NOSYSTEM,      MQD_ERR_NOCONNECT,
  MQD_ERR_INVALIDAPI,    MQD_ERR_NOCONNECTQUE,  MQD_ERR_DOWNRCV,
  MQD_ERR_DEADLOCK,      MQD_ERR_BACKOUT,       MQD_ERR_IO,
  MQD_ERR_NOMEMORY,      MQD_ERR_PROCESSOVER,  
  MQD_ERR_BUFFERLACK,    MQD_ERR_TRANFILE,      MQD_ERR_MSGFILE,
  MQD_ERR_UNITMSGOVER,   MQD_ERR_UNITSUMOVER,   MQD_ERR_NOQUE,
  MQD_ERR_NOMSG,         MQD_ERR_QUEEND,        MQD_ERR_QUERINHIBIT,
  MQD_ERR_PURGEMSG,      MQD_ERR_MSGBODYLENGTH, MQD_ERR_GETMODE

  MQD_ERR_SYNTAX,       MQD_ERR_NOSYSTEM,      MQD_ERR_NOCONNECT,
  MQD_ERR_INVALIDAPI,   MQD_ERR_NOCONNECTQUE,  MQD_ERR_DOWNRCV,
  MQD_ERR_DEADLOCK,     MQD_ERR_BACKOUT,       MQD_ERR_OTHERTHR,
  MQD_ERR_IO,           MQD_ERR_NOMEMORY,      
  MQD_ERR_PROCESSOVER,  MQD_ERR_BUFFERLACK,    MQD_ERR_TRANFILE,
  MQD_ERR_MSGFILE,      MQD_ERR_UNITMSGOVER,   MQD_ERR_UNITSUMOVER,
  MQD_ERR_NOQUE,        MQD_ERR_NOMSG,         MQD_ERR_QUEEND,
  MQD_ERR_QUERINHIBIT,  MQD_ERR_PURGEMSG,      MQD_ERR_MSGBODYLENGTH,
  MQD_ERR_GETMODE

復帰値

  本関数の処理結果が以下の復帰値で通知されます。

  正常時:  0
  異常時: -1

注意事項