Reactive Extensions for C++概要

1216 ワード

Reactive Extensions for C++(Rx.cppとも呼ばれる)は、すでにWinRT(C++/CX)やOS X(clang)で使用できるようになっています.まだ若いにもかかわらず、多くの作業は前のプレビュー版で完了しています.
Scheduling is a cornerstone of Reactive Extensions. スケジュールはReactive Extensionsの***です.このバージョンには5つのスケジューラがあります.WindowsのHWNDメッセージループに特化して設計されたスケジューラも含まれています.
  • Immediate
  • CurrentThread
  • EventLoop
  • NewThread
  • Window

  • Rx開発者にとって、「STLアルゴリズムと等価な非同期」オペレータは、OrderBy、ForEach、Using、Scan、Throttle、TakeUntil、Skip、SkipUntil、ToVector、ToList、Zip、Concat、CombineLatest、Merge、ToAsync、Using、ConnectableObservable、Multicast、Publish、Publish、RefCount、ConnectForever、SubscribeOn、ObserveOn.
    WinRTのC+/CX特有の特性としては、BindCommand、DeferOperation、CoreDispatcherScheduler、FromEventPattern、FromAsyncPattern、ReactiveCommandが挙げられる.最後の特性はPaul BettsのReactiveUIから得られた.
    フェースは、観察可能オブジェクト(observable)を1つの範囲で作成する例です.
    //Declare an observable 
    auto values1 = rxcpp::Range(1, 10); 
    rxcpp::from(values1)    
        .for_each(      
            [](int p) {         
            cout << p << endl;  
    });

    Rx.cppのソースコードはCodePlexにあり、Apache License 2.0ライセンスをサポートしています.
    原文リンク:Introducing Reactive Extensions for C++