次の方法で共有


Rx のバージョンの違い

次のトピックでは、リアクティブ拡張機能を使用してソリューションを開発できるさまざまなプラットフォームについて説明します。

Rx の最新リリースを入手し、その前提条件を確認するには、 Rx MSDN デベロッパー センターを参照してください。

.NET Framework

コア Rx インターフェイスである IObservable<T> と IObserver<T> は、.NET Framework 4 の一部として出荷されます。 .NET Framework 3.5 SP1 で実行している場合、または Observable 型で実装されている LINQ 演算子とスケジューラなどの他の多くの機能を利用する場合は、Rx MSDN デベロッパー センターで Rx アセンブリをダウンロードできます。

Silverlight

Silverlight ではクロススレッド呼び出しを行うことができないため、バックグラウンド スレッドを使用して UI を更新することはできません。 Dispatcher.BeginInvoke 呼び出しを使用して詳細コードを記述して、メイン UI スレッドでコードを明示的に実行する代わりに、Rx アセンブリによって提供されるファクトリ Observable.Start メソッドを使用して、非同期的にアクションを呼び出すことができます。 内部の Rx によって、クロススレッド処理が透過的に処理されます。

Scheduler で受け取るさまざまな Observable 演算子オーバーロードを使用し、使用する DispatcherScheduler を指定することもできます。

Javascript

Rx for Javascript (RxJS) を使用すると、JavaScript で LINQ 演算子を使用できます。 既存の DOM、XmlHttpRequest (AJAX)、jQuery イベントからプッシュベースの監視可能なコレクションへの使いやすい変換が提供されるため、ユーザーは Rx を既存の JavaScript ベースの Web サイトにシームレスに統合できます。

RxJS は、同様の機能をクライアント スクリプトに提供し、jQuery イベント (Rx.Observable.FromJQueryEvent) と統合します。 また、Script# もサポートしています。

Windows Phone

Windows Phone 7 には、デバイスの ROM にベイクされたリアクティブ拡張機能のバージョンが付属しています。 詳細については、「Windows Phoneの .NET の事後対応拡張機能の概要」を参照してください。 このバージョンのリアクティブ拡張機能のドキュメントについては、Microsoft.Phone.Reactive 名前空間の Windows Phone API ライブラリを参照してください。

Rx MSDN デベロッパー センターには、System.Reactive.Linq 名前空間に新しい定義を含む、更新されたバージョンの Rx for WP7 も含まれています。 新しい API は、電話に組み込まれているライブラリと競合しないことに注意してください (また、ROM のバージョンを置き換える必要もありません)。 これらの 2 つのバージョンの違いの詳細については、 こちらの Rx チームのブログ投稿を参照してください。