イベントキューを排出関数
- 更新日2025-07-30
- 8分で読める
1つまたは複数のイベントキューから最も古い通知イベントを破棄します。破棄したいイベントキューにフィルタイベントが含まれている場合、この関数はキュー内の最初のフィルタイベントで停止し、停止する前に発生したイベントのみを破棄します。

入力/出力
最も古いイベント時刻
—
最も古いイベント時刻は、イベント保持を開始するイベントタイムスタンプ (単位はミリ秒) です。この関数は、指定したイベント時刻以前のすべてのイベントを破棄します。このミリ秒タイマーは、「ティックカウント (ms)」関数の戻り値を受け入れることができます。
イベント登録refnum
—
イベント登録refnumは、排出したいキューに関連付けられているイベント登録refnumへのリファレンスです。また、イベント登録refnumのクラスタを配線して、複数のキューを排出することもできます。「イベントキューを排出」関数がイベントストラクチャのイベントケース内にない限り、この入力は必須です。イベントケース内のイベントストラクチャのスタティックイベントキューを排出します。この入力が配線されている場合、「イベントキューを排出」関数はイベントストラクチャのイベントケース内にあり、スタティックイベントを含む?が未配線またはTrueの場合、関数は配線されたrefnumに関連付けられたダイナミックイベントキューとイベントストラクチャのスタティックキューの両方を排出します。
スタティックインベントを含める? (T)
—
スタティックイベントを含める?は、イベントストラクチャと関連付けられている、キューに追加されているたスタティックイベントを排出操作に含めるかどうかを指定します。「イベントキューを排出」関数をイベントストラクチャのイベントケースに配置した場合、デフォルトはTRUEです。それ以外の場合、デフォルト値はFALSEです。 メモ スタティックイベントを含める?を配線する場合、排出操作に含めたい、または排出操作を省略したいスタティックイベントを処理するイベントストラクチャの内側に、この関数を配置する必要があります。
イベントタイプまたはオブジェクト
—
エラー入力 (エラーなし)
—
エラー入力は、このノードを実行する前に発生したエラーの状態を示します。この入力は、標準エラー入力として機能します。
最新を保持
—
最新を保持には、イベントキュー内に保持する最新のイベント数を指定します。イベントタイプまたはオブジェクトパラメータを配線した場合、最新を保持は、指定したタイプのイベントのみに影響を与えます。複数のイベントキューを排出する場合、最新を保持には、指定されたすべてのイベントキューから保持するイベントの合計数が含まれます。 メモ 最も古いイベント時刻と最新を保持の両方を未配線にした場合、この関数は、イベントタイプまたはオブジェクトにより設定された、いずれかの条件に一致するすべてのキューの全イベントを破棄します。最も古いイベント時刻と最新を保持の両方を配線した場合、この関数は、指定したイベント時刻に開始したすべてのイベント、および指定した最近のイベント数以内のすべてのイベントを保持します。
イベント登録refnum出力
—
イベント登録refnum出力は、排出されたイベントキューと関連付けられているイベント登録refnumを返します。
破棄されたイベント数
—
破棄されたイベント数は、破棄されたイベント数の合計を返します。
エラー出力
—
エラー出力には、エラー情報が含まれます。この出力は、標準エラー出力として機能します。 |
マウス移動イベントやパネルサイズ変更イベントなどのように、イベントが高速で連続して発生するが、アプリケーションはそのうち最新のイベントだけを必要とする場合、アプリケーションが新しいイベントデータにより高速に反応できるように、古いイベントを破棄できます。
以下のサンプルは、「イベントキューを排出」関数がイベントを破棄する方法を指定するためにイベントタイプまたはオブジェクトパラメータにデータを配線する方法を示しています。サンプルはイベント登録refnumパラメータの使用法を示していないため、正しく動作するには、このコードをイベントストラクチャのイベントケースに配置するか、この入力を適切なイベント登録refnumに配線する必要があります。
サンプル 1: 複数のイベントタイプを破棄する
マウスダウンとマウスアップのように、複数のイベントタイプを破棄するには、以下のサンプルのように、イベントタイプまたはオブジェクト入力にイベントタイプ列挙体の配列またはクラスタを配線します。
「イベントキューを排出」は、イベントソースに関係なく、マウスダウンとマウスアップの両方のイベントを破棄します。しかし、最新を保持パラメータに定数1が配線されててるので、最新のマウスダウンまたはマウスアップイベントがイベントキューに保持されます。さらに、イベントタイプごとに1つのイベントではなく、合計で1つのイベントだけが保持されます。
サンプル 2: 特定のオブジェクトが生成したイベントを破棄する
特定のオブジェクトが生成したイベントだけを破棄するには、イベント、ユーザイベントRefnum、およびイベントに関連付けられているRefnumをポイントするVIサーバリファレンスを、イベントタイプまたはオブジェクト入力に配線します。複数のオブジェクトのイベントを破棄するには、以下のサンプルのように、Refnumの配列またはクラスタを使用します。
「イベントキューを排出」は、クラスタにバンドルされたリファレンスにリンクされているオブジェクトが生成した任意タイプのイベントを破棄します。
サンプル 3: 特定のオブジェクトが生成した特定のイベントを破棄する
特定のイベントが特定のオブジェクトにより生成された場合にのみ破棄したい場合、破棄するイベントタイプを含んだ列挙体を、そのイベントを生成するオブジェクトをポイントするRefnumとバンドルします。また、複数のオブジェクトと関連付けられた複数のイベントを破棄するには、以下のサンプルのように、イベントタイプ列挙体/オブジェクトのペアのクラスタまたは配列を作成します。
—関数は、ブールによって生成されたマウスダウンとマウスアップイベントのみを破棄します。
—関数は、2Dピクチャ制御器によって生成されたマウス移動のみを破棄します。
— イベントは特定のオブジェクトと組み合わされていないため、関数は、任意のイベントソースにより生成されたキーアップイベントを破棄します。
最も古いイベント時刻
—
イベント登録refnum
—
スタティックインベントを含める? (T)
—
イベントタイプまたはオブジェクト
—
エラー入力 (エラーなし)
—
最新を保持
—
イベント登録refnum出力
—
破棄されたイベント数
—
エラー出力
—