IObservable 問題を生成する次の Rx クエリがあります。これは Publish() では機能しないため、サブスクライバーの数が増加するとメモリ負荷も増加します。
// Works
Observable
.Interval(TimeSpan.FromSeconds(1.0))
.Select(_ => XDocument.Load("http://test.com/data.xml"));
// Broken
Observable
.Interval(TimeSpan.FromSeconds(1.0))
.Select(_ => XDocument.Load("http://test.com/data.xml")).Publish();
そのような Observable を作成するより良い方法はありますか?