[Twisted-Python] Re: r15451 - Fix test failures under windowsby changing the eventual-send operation to
paul-lists at perforge.com
Mon Jan 2 08:37:49 EST 2006
----- Original Message -----
From: "Tommi Virtanen" <tv at twistedmatrix.com>
To: "Twisted general discussion" <twisted-python at twistedmatrix.com>
Sent: Monday, January 02, 2006 4:19 AM
Subject: Re: [Twisted-Python] Re: r15451 - Fix test failures under windowsby
changing the eventual-send operation to
> Paul G wrote:
>> full ordering/sorting hit on inserts. if you think a little harder, this
>> can be made fairly efficient with a sparse circular list of event
>> buckets, with each bucket being a fifo queue of events to be fired at
>> that time. whether it's worth bothering with the additional complexity
>> is up for discussion.
> Sounds like a not-yet-polished version of what the kernel does.
> (note I'm not really convinced twisted should implement a similar thing,
> atleast right now)
yep, the kernel implementation is another (similar) way to skin the same
cat. please note that the kenel implementation makes a certain tradeoff
because: 1) it expects most timers to be deleted before expiring 2) it has a
bounded jiffies range. in the context of twisted, i'd rather take the hits
piecemeal on inserts/deletes with a sparse circular array rather than all at
once as with their logarithmic bucket scheme. i have some of this
implemented in some scheduling code i wrote a while back, but it'd need some
massaging. if there's any interest, i may produce a patch, but i don't want
to do the work if it's not gonna get accepted (i'm lazy ;).
with that said, the specific issue warner is having could be fixed at the
source if the current implementation is deemed sufficient. this can be
accomplished by finding a better time source to use under windows and/or
implementing a crude version of lagrange timestamps to use as indices.
More information about the Twisted-Python