Re: [PATCH] Block on oneways
- From: Jules Colding <colding omesc com>
- To: michael meeks novell com
- Cc: ORBit2 <orbit-list gnome org>
- Subject: Re: [PATCH] Block on oneways
- Date: Fri, 28 Sep 2007 12:34:53 +0200
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/orbit-list gnome org/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
[
Date Prev][Date Next] [
Thread Prev][Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]