Just as a note:
the PyPy stackless module was not really maintained in years, and I
remember I had a more compliant version prepared, but lost interest
after the Jit became unsuitable for the stackless version.
Now it's time to finalize and correct this, because a Jit-enabled
stackless is in reach, again.
Will try to get to it, soon.
cheers - Chris
On 7/5/12 8:42 PM, Hervé Coatanhay wrote:
Hi all,
I was playing with stackless.py from pypy. In that implementation
kill() definitely raises an exception:
https://bitbucket.org/pypy/pypy/src/68e7e825d598/lib_pypy/stackless.py#cl-68
Just so you know.
Hervé
On Fri, May 25, 2012 at 5:11 AM, Richard Tew <[email protected]
<mailto:[email protected]>> wrote:
On Sun, May 20, 2012 at 10:29 AM, Sylvain Prat
<[email protected] <mailto:[email protected]>> wrote:
> I tried to wrap my tasklet in a parent object which has the same
> lifespan as my tasklet and has a __del__ function for cleaning
up, but
> I keep having problems with circular references (the wrapper/parent
> object also provides the callable of the tasklet, i.e. a bound
method)
> that make the tasklet/parent object uncollectable (circular
references
> : wrapper --> tasklet --> stackless machinery? --> callable stack
> frame (bound method of wrapper) --> wrapper). Same problem when
trying
> to inherit from tasklet.
>
> So, how can I clean up resources in tasklets? (I'm pretty sure I've
> missed something obvious)
Hi Sylvain,
Kristjan having clarified that TaskletExit is definitely off the table
for now, I'd like to make the response I should have when you first
posted. Fix your circular references and __del__ should be fine.
What I tend to do is use weak references, where applicable, in order
to ensure that nothing keeps a tasklet alive except where I explicitly
want. There is nothing internal to Stackless which will keep a
tasklet alive without your implicit direction. If my tasklets are
kept alive and I detect it, then I use gc.get_referrers(tasklet) to
track down why.
Cheers,
Richard.
_______________________________________________
Stackless mailing list
[email protected] <mailto:[email protected]>
http://www.stackless.com/mailman/listinfo/stackless
_______________________________________________
Stackless mailing list
[email protected]
http://www.stackless.com/mailman/listinfo/stackless
--
Christian Tismer :^) <mailto:[email protected]>
tismerysoft GmbH : Have a break! Take a ride on Python's
Karl-Liebknecht-Str. 121 : *Starship* http://starship.python.net/
14482 Potsdam : PGP key -> http://pgp.uni-mainz.de
work +49 173 24 18 776 mobile +49 173 24 18 776 fax n.a.
PGP 0x57F3BF04 9064 F4E1 D754 C2FF 1619 305B C09C 5A3B 57F3 BF04
whom do you want to sponsor today? http://www.stackless.com/
_______________________________________________
Stackless mailing list
[email protected]
http://www.stackless.com/mailman/listinfo/stackless