WebSphere Message Service Clients for C/C++ and .NET, Version 1.2 作業系統: Linux, Windows

MessageConsumer

應用程式會使用訊息使用端來接收送往目的地的訊息。

有關 XMS 所定義的 MessageConsumer 物件內容清單, 請參閱MessageConsumer 內容

函數

函數摘要:
函數 說明
xmsMsgConsumerClose 關閉訊息使用端。
xmsMsgConsumerGetMessageListener 取得已向訊息使用端登錄之訊息接聽器函數和環境定義資料的指標。
xmsMsgConsumerGetMessageSelector 取得訊息使用端的訊息選取器。
xmsMsgConsumerReceive 接收訊息使用端的下一則訊息。呼叫會無限期地等待訊息,或直到訊息使用端關閉為止。
xmsMsgConsumerReceiveNoWait 接收訊息使用端的下一則訊息(若立即有的話)。
xmsMsgConsumerReceiveWithWait 接收訊息使用端的下一則訊息。呼叫只等待訊息一段指定的時間,或直到訊息使用端關閉為止。
xmsMsgConsumerSetMessageListener 向訊息使用端登錄訊息接聽器函數和環境定義資料。

xmsMsgConsumerClose – 關閉訊息使用端

介面:
xmsRC xmsMsgConsumerClose(xmsHMsgConsumer *consumer,
                          xmsHErrorBlock errorBlock);

關閉訊息使用端。

如果應用程式試著關閉已關閉的訊息使用端, 則會忽略該呼叫。

參數:
consumer(輸入/輸出)
在輸入方面,為訊息使用端的控點。在輸出方面,函數會傳回空值控點。
errorBlock(輸入)
錯誤區塊的控點或空值控點。
異常狀況:
  • XMS_X_GENERAL_EXCEPTION

xmsMsgConsumerGetMessageListener – 取得訊息接聽器

介面:
xmsRC xmsMsgConsumerGetMessageListener(xmsHMsgConsumer consumer,
                                       fpXMS_MESSAGE_CALLBACK *lsr,
                                       xmsCONTEXT *context,
                                       xmsHErrorBlock errorBlock);

取得已向訊息使用端登錄之訊息接聽器函數和環境定義資料的指標。

如需使用訊息接聽器函數的相關資訊,請參閱在 C 中使用訊息接聽器函數

參數:
consumer(輸入)
訊息使用端的控點。
lsr(輸出)
訊息接聽器函數的指標。如果沒有任何訊息接聽器函數向訊息使用端登錄, 則呼叫會傳回空值指標。
context(輸出)
環境定義資料的指標。如果沒有任何訊息接聽器函數向連線登錄, 則呼叫會傳回空值指標。
errorBlock(輸入)
錯誤區塊的控點或空值控點。
異常狀況:
  • XMS_X_GENERAL_EXCEPTION

xmsMsgConsumerGetMessageSelector – 取得訊息選取器

介面:
xmsRC xmsMsgConsumerGetMessageSelector(xmsHMsgConsumer consumer,
                                       xmsCHAR *messageSelector,
                                       xmsINT length,
                                       xmsINT *actualLength,
                                       xmsHErrorBlock errorBlock);

取得訊息使用端的訊息選取器。

如需如何使用此函數的相關資訊, 請參閱會以值形式來傳回字串的 C 函數

參數:
consumer(輸入)
訊息使用端的控點。
messageSelector(輸出)
內含訊息選取器表示式的緩衝區。如果需要轉換資料, 則此為轉換後的訊息選取器表示式。
length(輸入)
緩衝區的長度(以位元組計)。如果您指定的是 XMSC_QUERY_SIZE, 則不會傳回訊息選取器表示式,而會將其長度放在 actualLength 參數中傳回。
actualLength(輸出)
訊息選取器表示式的長度(以位元組計)。如果需要轉換資料, 則此為轉換後的訊息選取器表示式長度。如果您在輸入中指定一個空值指標, 則不會傳回長度。
errorBlock(輸入)
錯誤區塊的控點或空值控點。
異常狀況:
  • XMS_X_GENERAL_EXCEPTION

xmsMsgConsumerReceive – 接收

介面:
xmsRC xmsMsgConsumerReceive(xmsHMsgConsumer consumer,
                            xmsHMsg *message,
                            xmsHErrorBlock errorBlock);

接收訊息使用端的下一則訊息。呼叫會無限期地等待訊息,或直到訊息使用端關閉為止。

參數:
consumer(輸入)
訊息使用端的控點。
message(輸出)
訊息的控點。在呼叫等待訊息期間,如果訊息使用端已關閉, 則函數會傳回一個空值控點。
errorBlock(輸入)
錯誤區塊的控點或空值控點。
異常狀況:
  • XMS_X_GENERAL_EXCEPTION

xmsMsgConsumerReceiveNoWait – 接收但不等待

介面:
xmsRC xmsMsgConsumerReceiveNoWait(xmsHMsgConsumer consumer,
                                  xmsHMsg *message,
                                  xmsHErrorBlock errorBlock);

接收訊息使用端的下一則訊息(若立即有的話)。

參數:
consumer(輸入)
訊息使用端的控點。
message(輸出)
訊息的控點。如果沒有訊息立即可用,函數會傳回空值控點。
errorBlock(輸入)
錯誤區塊的控點或空值控點。
異常狀況:
  • XMS_X_GENERAL_EXCEPTION

xmsMsgConsumerReceiveWithWait – 接收(有一個等待間隔)

介面:
xmsRC xmsMsgConsumerReceiveWithWait(xmsHMsgConsumer consumer,
                                    xmsLONG waitInterval,
                                    xmsHMsg *message,
                                    xmsHErrorBlock errorBlock);

接收訊息使用端的下一則訊息。呼叫只等待訊息一段指定的時間,或直到訊息使用端關閉為止。

參數:
consumer(輸入)
訊息使用端的控點。
waitInterval(輸入)
呼叫等待訊息的時間(毫秒)。如果您指定的等待間隔為 0, 呼叫會無限期地等待訊息。
message(輸出)
訊息的控點。在等待間隔期間,如果沒有訊息送達, 或者在呼叫等待訊息期間訊息使用端已關閉, 則函數會傳回一個空值控點,但不會有錯誤。
errorBlock(輸入)
錯誤區塊的控點或空值控點。
異常狀況:
  • XMS_X_GENERAL_EXCEPTION

xmsMsgConsumerSetMessageListener – 設定訊息接聽器

介面:
xmsRC xmsMsgConsumerSetMessageListener(xmsHMsgConsumer consumer,
                                       fpXMS_MESSAGE_CALLBACK lsr,
                                       xmsCONTEXT context,
                                       xmsHErrorBlock errorBlock);

向訊息使用端登錄訊息接聽器函數和環境定義資料。

如需使用訊息接聽器函數的相關資訊,請參閱在 C 中使用訊息接聽器函數

參數:
consumer(輸入)
訊息使用端的控點。
lsr(輸入)
訊息接聽器函數的指標。若有訊息接聽器函數已向訊息使用端登錄, 您可以改指定一個空值指標,以取消登錄。
context(輸入)
環境定義資料的指標。
errorBlock(輸入)
錯誤區塊的控點或空值控點。
異常狀況:
  • XMS_X_GENERAL_EXCEPTION

Reference topic

使用條款 | 評比此網頁

時間戳記前次更新: 25 Apr 2006
(C) Copyright IBM Corporation 2005. All Rights Reserved.
本資訊中心採用 Eclipse 技術。(http://www.eclipse.org)