[Python-Dev] Re: Suggested memory API rules for 2.3 (original) (raw)
Neil Schemenauer nas@python.ca
Wed, 3 Apr 2002 07:16:19 -0800
- Previous message: [Python-Dev] Suggested memory API rules for 2.3
- Next message: [Python-Dev] Re: Suggested memory API rules for 2.3
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Tim Peters wrote:
Guido and I sat down and hashed this out Tuesday afternoon. Here's what I think Revealed Truth was.
Very good. Spelling out the rules was long overdue.
Note that the eight ways to spell "free" all have to map to the pymalloc free when pymalloc is enabled in 2.3. There is no way to spell "give me the raw platform free(), damn it", except for "free".
I guess we need to do something special for pymalloc free() if PYMALLOC_DEBUG is defined.
We don't promise anything about the internals of the object allocator.
Good. Someone might write platform specific versions that use mmap or something.
Recommended Practice
When backward compatibility is not a concern, using this subset of the raw memory and object memory APIs is recommended: PyMem{Malloc, Realloc, Free} PyObject{Malloc, Realloc, Free} PyObject{New, NewVar}
This should probably come up front in the documentation. All the rest is historical crap. :-)
Neil
- Previous message: [Python-Dev] Suggested memory API rules for 2.3
- Next message: [Python-Dev] Re: Suggested memory API rules for 2.3
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]