BT

Reactive Extensions for C++の紹介

| 作者: Jonathan Allen フォローする 595 人のフォロワー , 翻訳者 笹井 崇司 フォローする 0 人のフォロワー 投稿日 2013年12月26日. 推定読書時間: 1 分 |

原文(投稿日:2013/12/20)へのリンク

Rx.cppとしても知られるReactive Extensions for C++が、WinRTでも(C++/CXを使って)、OS Xでも(clangを使って)利用できるようになった。まだ初期段階だが、最後のプレビュー以来、多くの仕事がなされている。

スケジューリングはReactive Extensionsの基盤だ。WindowsのHWNDメッセージループに特化したものも含めて、このリリースでは5つのスケジューラが利用できる。

  • Immediate
  • CurrentThread
  • EventLoop
  • NewThread
  • Window

OrderBy、ForEach、Using、Scan、Throttle、TakeUntil、Skip、SkipUntil、ToVector、ToList、Zip、Concat、CombineLatest、Merge、ToAsyn、Using、ConnectableObservable、Multicast、Publish、PublishLast、RefCount、ConnectForever、SubscribeOn、ObserveOnといった「STLアルゴリズムの非同期等価」なオペレータは、Rx開発者にとっておなじみだろう。

BindCommand、DeferOperation、CoreDispatcherScheduler、FromEventPattern、FromAsyncPattern、ReactiveCommandはWinRTのC++/CXに特有なものだ。最後のReactiveCommandはPaul Betts氏のReactiveUIに由来する。

以下に、RangeからObservableを生成する例を示す。

//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ライセンスで利用できる。

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

あなたの意見をお聞かせください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする
コミュニティコメント

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

ディスカッション

InfoQにログインし新機能を利用する


パスワードを忘れた方はこちらへ

Follow

お気に入りのトピックや著者をフォローする

業界やサイト内で一番重要な見出しを閲覧する

Like

より多いシグナル、より少ないノイズ

お気に入りのトピックと著者を選択して自分のフィードを作る

Notifications

最新情報をすぐ手に入れるようにしよう

通知設定をして、お気に入りコンテンツを見逃さないようにしよう!

BT