[Stackless] Question about Channel Queue attribute
andrewfr_ice at yahoo.com
Mon Dec 7 05:51:45 CET 2009
--- On Sun, 12/6/09, Kristján Valur Jónsson <kristjan at ccpgames.com> wrote:
> From: Kristján Valur Jónsson <kristjan at ccpgames.com>
> Subject: RE: [Stackless] Question about Channel Queue attribute
> To: "Andrew Francis" <andrewfr_ice at yahoo.com>, "stackless at stackless.com" <stackless at stackless.com>
> Date: Sunday, December 6, 2009, 1:20 PM
> There is no "correct" behaviour,
> since this isn't defined by some specification somewhere.
Okay. I guess I should assume that what is written in the Wiki,
followed by C Stackless are the closest to a definitive source?
> In C stackless, tasklets are linked together using their
> "next" attribute. This is used to implement the
> runnable queue and also the queue for the tasklets.
> The channel's "queue" slot simply holds a reference to the
> first tasklet in the queue.
> I expect that the channels are differently implemented in
> PyPy, perhaps using a Deque, so that is what queue returns
> for that implementation.
Well Kristjan, in implementing select, I am running across differences
between Stackless.py and C Stackless. For instance, _channel is not
implemented in Stackless.py. So far from what I have seen, much of Stackless.py's structure mirrors what in the C Stackless code (i.e., channel action). Again, I don't know what the feeling of the group are
towards making sure that Stackless.py mirrors C Stackless as closely as
they can, given they are written in different languages.
More information about the Stackless