キュー
概要と主要な概念
キューは、下流のオブジェクトがフローアイテムを受け入れることができないときにフローアイテムを格納するために使用されます。デフォルトでは、キューは先入れ先出し方式で機能します。つまり、下流のオブジェクトが使用可能になると、そのオブジェクトを最も長い時間待っていたフローアイテムが最初にキューを離れます。キューには、フローアイテムをリリースする前にバッチに累積するためのオプションがあります。
キューは固定リソースです。最大コンテンツに到達するまで、フローアイテムを受け取り続けます。バッチ処理が無効な場合、フローアイテムがキューに到着するとすぐにキューはフローアイテムをリリースします。また、各フローアイテムがリリースされる直前にOnEndCollectingトリガーが呼び出されます。
バッチ処理
バッチ処理が有効になっている場合、キューはフローアイテムのターゲットバッチを受け取るまで待機し、バッチ内のすべてのフローアイテムを同時にリリースします。デフォルトでは、最大待機時間は0です。最大待機時間0は、最大待機時間がないことを意味します。または、キューがバッチを収集するために無期限に待機します。最大待機時間がゼロでない場合、最初のフローアイテムが到着するとキューがタイマーを起動します。タイマーの終わりにバッチがまだ満たされていない場合、キューはバッチの収集を終了し、収集したすべてのフローアイテムをリリースします。
OnEndCollectingトリガーはフローアイテムがリリースされる直前に呼び出されます。また、バッチ内の最初のフローアイテムへの参照がアイテムとして渡され、収集されたアイテムの数がparam(2)として渡されます。キューがバッチ間でコンテンツをフラッシュするように設定されている場合、キューはバッチの収集が終了するとすぐに入力ポートを閉じ、すべてのバッチを出力するまで待ってから入力ポートを再度開きます。キューがバッチ間でコンテンツをフラッシュしない場合、キューは各バッチの収集が終了するとすぐに別のバッチの収集を開始します。つまり、任意の時点でキュー内にある終了済みのバッチに離れることを待機させることができます。
イベント
イベントの詳細については、「イベントリスニング」ページを参照してください。
キューは、すべての固定リソースに共通の標準イベントを使用します。これらのイベントの説明については、「固定リソース - イベント」を参照してください。
キューには次の追加イベントがあります。
収集終了時
このイベントは、アイテムがキューを離れる前にキューがアイテムのバッチを完了したときに発生します。
次のパラメータがあります。
イベントパラメータ | タイプ | 説明 |
---|---|---|
入るアイテム | オブジェクト | バッチ内の最後のフローアイテムへの参照。 |
バッチサイズ | 整数 | バッチ内のフローアイテムの数。 |
状態
統計的な目的で、キューは、シミュレーション実行中、さまざまな時点で次のいずれかの状態になります。オブジェクトをクリックし、[クイックプロパティ]の[統計]ペインを表示すると、現在の状態を表示できます。
空
キューは空です。
回収中
キューがバッチのフローアイテムを収集しています。
リリース中
キューはバッチの収集を終了しており、持っているフローアイテムをリリースしています。また、キューがバッチ処理中ではなくキューにフローアイテムがある場合は、この状態になります。
輸送待ち
キューにはリリースされて下流に移動する準備が完了しているフローアイテムがありますが、輸送が到着してフローアイテムをピックアップするのを待機しています。
統計
キューは、すべての固定リソースに共通の標準統計を使用します。これらの統計情報については、「固定リソース - 統計」を参照してください。
プロパティ
コンバイナオブジェクトでは、次のプロパティパネルを使用します。