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

Reply via email to