問題タブ [system.reactive]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
.net - 「プッシュ」リンクとリアクティブフレームワーク
(ここでも、私が理解していない2つの概念を組み合わせることで、私の無知の深さを明らかにします)
ここでは、 Linqの「プル」モデルと比較した「プッシュ」モデルであるリアクティブフレームワークについて読みました。これは、 「プッシュ」Linqに関する記事を読んだことを思い出させました。
これら2つの「フレームワーク」の間に本当に類似点はありますか?
アップデート
.net - ToObservable 拡張メソッドはどこにありますか?
ここで言及されていますが、それを取得するためにどれusing
を追加する必要があるかわかりません。
(とりあえず自作しました)
.net - その有用性を証明する.NETの例のためのリアクティブフレームワーク
.NET4.0の新しいReactiveFrameworkについては、かなりの誇大宣伝がありました。私はその基本的な概念を理解していなかったと思いますが、それがそれほど有用であるということは完全には売られていません。Rxのパワーと有用性を完全に示す良い例(それは中途半端に理解しやすい)を思い付くことができますか?Rxを使用すると、生活がとても楽になるものを見せてください。
mvvm - リアクティブ拡張 (Rx) + MVVM =?
Reactive Extensions (Rx) の能力を説明するために使用されている主な例の 1 つは、既存のマウス イベントを、マウス ドラッグ中のデルタを表す新しい「イベント」に結合することです。
出典: Matthew Podwysocki の Reactive Framework シリーズの紹介。
MVVM では、私は通常、.xaml.cs ファイルをできるだけ空に保つように努めています。ビューモデルのコマンドを使用してビューからイベントを純粋にマークアップでフックする 1 つの方法は、動作を使用することです。
出典:ブライアン・ジェニシオ。
Reactive Framework は、コントローラーがビューを認識し、そのイベントを直接参照できる従来の MVC パターンにより適しているようです。
でも、ケーキも食べたい!
この 2 つのパターンをどのように組み合わせますか?
c# - IObservableの実装ゼロから
Reactive Extensionsには、既存のイベントと非同期操作をオブザーバブルに変換するための多くのヘルパーメソッドが付属していますが、IObservable <T>を最初からどのように実装しますか?
IEnumerableには、実装を非常に簡単にするための素敵なyieldキーワードがあります。
IObservable <T>を実装する適切な方法は何ですか?
スレッドセーフについて心配する必要がありますか?
特定の同期コンテキストでコールバックされるためのサポートがあることは知っていますが、これはIObservable <T>作成者として私が心配する必要があるものですか、それとも何らかの形で組み込まれていますか?
アップデート:
これが私のC#バージョンのBrianのF#ソリューションです
編集: Disposeが2回呼び出された場合、ObjectDisposedExceptionをスローしないでください
c# - 101 Rx の例
編集: wiki へのリンクをありがとうございます。既に開始されているので、そこに行って確認する方が簡単だと思います。ただし、ここでの質問も良いので、msdn フォーラムに参加していない人でも wiki とその場所について知ることができます。
短い質問:
人々がそれをよりよく理解するのに役立つ Rx コードのサンプルはありますか?
隠された質問で長いとりとめのない:
Rx フレームワークがリリースされた今、私たちの多くはビットを入手して試してみることに興味を持っていると思います。悲しいことに、実際には多くの例がありません (徹底的な検索の後、Rx は wpf アプリで簡単にドラッグするためだけのものであるとほぼ確信しています)。
Rx チームが 101 シリーズの作成に関心を持っているように見えることをどこで読んだり聞いたりしたか (私は多くのブログやビデオを見てきました) を正確に思い出すことはできません。 ...それを理解し、今すぐプレイしたい人にとっては、かなりひどいものです (つまり、自尊心のある開発者は、このような新しい技術が登場したときに、新しいおもちゃを持った子供のようには感じません) .
私は個人的に今試してみましたが、すごい概念がいくつかあります.MaterializeやZipのようなメソッド名があるだけで、バック・トゥ・ザ・フューチャーのテレポーターなどを思い浮かべます.
したがって、より理解のある人たちが、基本的な使用法からより複雑なものまで、すべてのメソッドとその使用法をほぼカバーするala 101 Linq Examplesの例のコレクションを作成するのを手伝ってくれたらいいと思います。実用的な方法 (おそらく少しの理論も必要です。特に、これらの種類の概念にはおそらくそれが必要だったからです)
MS の開発者が時間を割いて私たちにそのような資料を提供してくれるのは素晴らしいことだと思いますが、このコミュニティは私たち自身の資料を作成するのに十分だと思いますよね?
c# - Silverlight で WCF サービスを呼び出すときに Observable.FromEvent を使用する
.NET Reactive Framework を使用して、作成中の Silverlight 3 アプリで使用される WCF サービスへの非同期呼び出しを簡素化しようとしています。
問題は、機能する方法でコードを構造化する方法を見つけるのに苦労していることです。問題の一部は、間違いなく、Reactive で利用できるメカニズムと、それらを使用して問題を解決する方法を理解することです。
一連の WCF サーバー呼び出しをつなぎ合わせようとしています。それらが同期している場合、次のようになります。
への呼び出しはm_Server.XXXX()
、Silveright アプリ内で直接実装されていました (したがって、同期することができます) が、現在は WCF サービス内で実装されています。Silverlight では WCF サービスを非同期で呼び出さなければならないため、このコード ブロックの書き直しには注意が必要です。
WCF プロキシ コードが生成するObservable.FromEvent<>()
さまざまなイベントをサブスクライブするために使用したいと考えていましたが、これを機能させる方法がわかりません。XXXCompleted
私の最初の試みは次のようになりました:
system.reactive - Observable.Contextが利用できない場合、どうすればUIを更新できますか?
WinFromアプリがあり、同期メソッドを使用してURLから文字列をダウンロードし、Rx ToAsyncメソッドを使用して非同期にし、観察可能な結果を取得します。結果が表示されたら、フォームに表示します。
昨日、Rxを最新リリースに更新しましたが、「Observableにはコンテキストの定義が含まれていません」と言われました。この行にコメントしようとすると、コードは「クロススレッド操作が無効です:コントロール'tbx_Reference'が作成されたスレッド以外のスレッドからアクセスされました」という例外をスローしました。
Subscribeメソッドを使用して非同期の結果を表示したいと思います。この問題を解決するにはどうすればよいですか?どうもありがとう。
.net - Reactive Extensions (Rx) と非同期クラス
私はこの投稿を読みました: " Rx の喜び: イベントベースの非同期パターンと IObservableの比較" EBAP の使用は推奨されません。新しい Rx 拡張 (msdn の PrimeNumberCalculator の例のようなもの) を使用して非同期コンポーネントを設計する最良の方法は何ですか?
前もって感謝します。
更新 私は自分の素数計算機を書くことができました。あなたの意見を聞きたいです:
c# - Reactive Extensions / Parallel Extensions の最大スレッド数
Microsoft はおそらく Parallel Extensions CTP へのすべてのダウンロード リンクを削除したため、完全に道に迷っています。
プロセッサよりも多くのスレッドが必要なため、特定の時間に実行されるタスクの最大数を指定したいと考えています。RXでこれを行う方法の手がかりはありますか?