Message36521
Logged In: YES
user_id=31435
I want to see this patch go in: it affords some nice
simplifications in many places, so should make the code
easier to maintain and to change.
Some gripes:
+ Most of the new functions don't appear to be documented
at all, except in that they're mentioned in passing by the
docs for other new functions: PyObject_GC_New,
PyObject_GC_NewVar, PyObject_GC_Resize, PyObject_GC_Del.
+ Unlike the old Init/Fini, the new Track/Ignore
don't "sound like" matching brackets. TrackOn/TrackOff,
TrackStart/TrackStop, Track/UnTrack, ... would be better
for this reason. I draw the line at PyObject_GC_New vs
PyObject_GC_Old, though <wink>.
+ Overall, and despite the pain it causes, it's probably
better to let GC continue to get triggered by "deallocation
deficit", rather than moving the prod into the eval loop.
Guido says you two already discussed that, so I won't
belabor it here. I'll note that one consequence of the
current policy is that GC glitches got triggered during
compilation, and mysterious as those were, that they *did*
happen during compilation allowed to rule out huge pieces
of the Python runtime code; it was significantly harder to
pin the blame for glitches that didn't happen until runtime. |
|
Date |
User |
Action |
Args |
2007-08-23 15:05:06 | admin | link | issue421893 messages |
2007-08-23 15:05:06 | admin | create | |
|