次の方法で共有


Take(TPayload) メソッド (CepOrderedStream(TPayload), UInt32)

順序付けされたストリームが指定されている場合、指定した数のイベントを各ウィンドウから取得します。

名前空間:  Microsoft.ComplexEventProcessing.Linq
アセンブリ:  Microsoft.ComplexEventProcessing (Microsoft.ComplexEventProcessing.dll)

構文

public static CepStream<TPayload> Take<TPayload>(
    this CepOrderedStream<TPayload> source,
    uint numberOfElements
)

型パラメーター

  • TPayload
    入力イベントのペイロードの型。

パラメーター

戻り値

型: Microsoft.ComplexEventProcessing.Linq. . :: . .CepStream< (Of < ( <'TPayload> ) > ) >
各ウィンドウから取得した指定した数のイベントを含むストリーム。

使用に関するメモ

Visual Basic および C# では、このメソッドを型 CepOrderedStream< (Of < ( <'TPayload> ) > ) > の任意のオブジェクトのインスタンス メソッドとして呼び出すことができます。このメソッドを呼び出すためにインスタンス メソッドの構文を使う場合は、最初のパラメーターを省略してください。詳細については、「https://msdn.microsoft.com/ja-jp/library/bb384936(v=sql.105)」または「https://msdn.microsoft.com/ja-jp/library/bb383977(v=sql.105)」を参照してください。

説明

詳細については、「TopK」を参照してください。

使用例

次の例では、入力ストリーム inputStream 用に定義された各スナップショット ウィンドウから上位 5 つのイベントを取得し、新しいイベント ストリームを生成します。各ウィンドウのイベントは、ペイロード フィールド e.f の値の昇順と、ペイロード フィールド e.i の値の降順を組み合わせて並べられます。

// Assuming the following input event type for inputStream: 
public class MyPayload 
{
  public int f; 
  public int i; 
}

var topfive = (from window in inputStream.Snapshot(SnapshotWindowOutputPolicy.Clip)
               from e in window
               orderby e.f ascending, e.i descending
               select e).Take(5);

関連項目

参照

CepStream クラス

Take オーバーロード

Microsoft.ComplexEventProcessing.Linq 名前空間