12.7.3.3 Listen(OracleConnection, OracleAQAgent[ ], int)
この静的メソッドは、OracleAQAgentオブジェクトの配列に指定された1つ以上のコンシューマについて、1つ以上のキューでメッセージをリスニングします。OracleAQAgentオブジェクトのNameプロパティはコンシューマの名前を表し、OracleAQAgentオブジェクトのAddressプロパティはキューの名前を表します。
タイムアウトした場合、このメソッドはnullを戻します。
宣言
// C# public static OracleAQAgent Listen(OracleConnection con, OracleAQAgent[] listenConsumers, int waitTime);
パラメータ
-
conOracleConnectionインスタンス。 -
listenConsumersリスニングされるコンシューマの配列。単一コンシューマ・キューの場合は、
OracleAQAgentオブジェクトの名前をnullまたは空にする必要があります。 -
waitTime待機時間(秒)。
戻り値
OracleAQAgentオブジェクト。
例外
ArgumentNullException - conまたはlistenConsumersパラメータがnullです。
InvalidOperationException - 接続がオープンされていません。
ArgumentException - waitTimeが-1未満です。
備考
Listenは、いずれかのキューでコンシューマがメッセージを使用できるようになるまで複数のキューを監視する必要がある場合に便利です。OracleAQAgentオブジェクトのNameプロパティはコンシューマの名前を表し、OracleAQAgentオブジェクトのAddressプロパティはキューの名前を表します。
waitTimeが-1の場合、待機時間は無限です。
このコールは、リスト内のコンシューマがメッセージを消費できるようになるまでコール元のスレッドをブロックします。このコールは、デキュー可能になったメッセージのコンシューマとキューを指定するOracleAQAgentオブジェクトを戻します。