Hi Michael, On Fri, 2007-09-28 at 11:34 +0100, Michael Meeks wrote: > Hi Jules, > > On Wed, 2007-09-26 at 10:11 +0200, Jules Colding wrote: > > http://www.mail-archive.com/[email protected]/msg00065.html > > Hmm :-) > > >An easy, simple and foolproof way to fix this would be to make all > > oneways block while sending data(*). > > Which would (unfortunately) nullify one of the major advantages of > oneways (asynchronicity) - the other end may not be interested in > reading.
Yes, agreed. > > Another fix would be to put a ref on the connection if the send is > > a oneway, but that fix will be more involved and not as straightforward. > > Hmm; it's clear that when a connection is finally unreffed we need to > do better wrt. sending all the queued data. This I guess ties into the > problems with shutdown and flushing data then. Absolute. This is the core of the old problem you and I wrote about back then. The connection shouldn't die until all queued data has been sent. > What do we do with > incoming calls on connections we are unreffing ? Drop them on the floor I guess? > Anyhow - the simplest approach I would have thought would be to keep a > ref on the connection while there is queued data, or at least some form > of weak-ref (right?). Well, I mainly did the patch as a way to fix it really quickly and in the hope that others would chime in with a more effective approach. So yes, you are probably right. Best regards, jules _______________________________________________ orbit-list mailing list [email protected] http://mail.gnome.org/mailman/listinfo/orbit-list
