title: What is the proper way to create an Observable which reads a stream to the end
body: <p>I'm struggling here. Normally I'd read a book but there aren't any yet. I've found countless examples of various things to do with reading streams using RX but I'm finding it very hard to get my head around.</p>
  
  <p>I know I can use Observable.FromAsyncPattern to create a wrapper of the Stream's BeginRead/EndRead or BeginReadLine/EndReadLine methods.</p>
  
  <p>But this only reads once -- when the first observer subscribes.</p>
  
  <p>I want an Observable which will keep reading and pumping OnNext until the stream errors or ends.</p>
  
  <p>In addition to this, I'd also like to know how I can then share that observable with multiple subscribers so they all get the items.</p>