Hello Tarmigan, I am new to go and I find myself asking the same question. Did you come to a conclusion about this?
Many thanks, Roman On Tuesday, March 8, 2011 at 9:02:14 PM UTC+1, Tarmigan wrote: > > On Mar 8, 11:40 am, Florian Weimer <f...@deneb.enyo.de> wrote: > > > Even io.MultiReader doesn't do what I am interested in though because > > > it reads all of the readers sequentially. For this application, I > > > want to read them simultaneously (think network io.Readers instead of > > > file io.Readers). > > > > The io.Reader interface is geared towards streams of bytes, and it > > will be difficult to interleave them with useful results. What kinds > > of data are you trying to process? > > Agreed. My data could not be interleaved. > > For a bit more context, the similarities in the times I have needed > this are when I have been muxing or demuxing a set of data streams (a > server type application for example). For example in one application > data was read from a single io.ReadWriteCloser and sent on to several > io.ReadWriters. All of the io.ReadWriters could then send data back > to the single io.ReadWriteCloser. I could potentially have done this > with a bunch of independent goroutines that each did an io.Copy or > something, but because no one goroutine owns the single > io.ReadWriteCloser that would pose problems with intermixed writing > (same problem as you mentioned with the reading) and with error > handling/closing/reconnecting. > > To be clear, my program is working, but I have found myself using this > same pattern a few times and I am wondering if a) there is a different > way I should be doing it or b) if converting from an io.Reader to a > set of channels would be useful to other people too. > > Thanks, > Tarmigan -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.