Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (日本語) » QAnywhere » QAnywhere クライアント・アプリケーションの作成

 

サイズの大きなメッセージの読み込み

メッセージのサイズが大き過ぎて、QAManager のプロパティ MAX_IN_MEMORY_MESSAGE_SIZE に設定されている制限値、またはデフォルトの制限値 (Windows の場合は 1 MB、Windows Mobile の場合は 64 KB) を超える場合があります。この場合、メモリ内のすべての内容をメッセージ・オブジェクトに格納することはできません。したがって、readInt() や readString() など、メモリにロードされているメッセージのすべての内容を必要とするメソッドを使用できません。しかし、大きなメッセージを分割してメッセージ・ストアから直接読み込むことはできます。それには、QATextMessage.readText() メソッドまたは QABinaryMessage.readBinary() メソッドを使用してループ処理します。

詳細については、次の項を参照してください。

この方法でメッセージを読み込む場合、IMPLICIT_ACKNOWLEDGEMENT を指定してオープンした QAManager は使用できません。EXPLICIT_ACKNOWLEDGEMENT を指定してオープンした QAManager を使用する必要があります。また、メッセージの受信確認は、readText() または readBinary() の呼び出しがすべて完了してから行います。

受信確認モードを参照してください。