[Stackless] channel.balance wrong?!
senn at maya.com
Fri Jul 10 17:55:18 CEST 2009
[unlikely that you haven't thought of this, but on the off-chance it
and because if channel->balance were ever broken I would expect a
*lot* more to
Are you doing "preemptive" scheduling? Is there a race-condition
where the balance is checked just prior to a receiver blocking?
(this would be the classic all-consumer-busy-but-one-about-to-be-ready
race condition you would only see under heavy load...)
On Jul 10, 2009, at 10:48 AM, Paul Sijben wrote:
> I tracked down a bug in my code that occasionally popped up to
> channel.balance being wrong sometimes.
> Some part of my code can not afford to block, so it checks the balance
> wheter it should send something into the channel. If there is a
> waiting on it, that is fed by a send and the sender will not block.
> I find that just occasionally the process stalls because there is a
> receiver waiting but the sender does not send as channel.balance==0
> instead of -1!
> I am running the current 2.6.2 version of stackless
> (Python 2.6.2 Stackless 3.1b3 060516 (python-2.6.2:73804M, Jul 3
> 11:33:51) )
> Is this issue known, and possibly solved in svn?
> Paul Sijben tel: +31334566488
> Eemvalley Technology BV fax: +31334557523
> the Netherlands http://eemvalley.com
> EemValley Technology werft python & wxpython
> programmeurs: http://www.eemvalley.nl/jobs
> Stackless mailing list
> Stackless at stackless.com
More information about the Stackless