On 2010/10/31 2:32, M.-A. Lemburg wrote: > M.-A. Lemburg wrote: >> Hirokazu Yamamoto wrote: >>> Hello. I found several codes using PyMem_Free to free >>> allocated memory with PyMem_MALLOC (ie: PyUnicode_AsWideCharString) >>> >>> Is it safe? >> >> Within the interpreter: yes. >> >> In extensions: depends on the platform, but probably not. >> >> The macros provide faster access to the C lib malloc calls. >> >> The functions need to be used in extensions in case the interpreter will >> free the resource or the extension wants to free an interpreter >> allocated resource. They provide access to the malloc calls >> used by the interpreter, which may operate on a different heap >> than the extensions. >> >> Within an extension the macros use the extension heap. >> >> A subtle, but important difference. > > BTW: If you were referring to extensions using PyMem_Free() > to deallocate memory allocated in the interpreter using > PyMem_MALLOC(), then that's exactly how things should be > done. > > I was referring to use of the two mentioned APIs within > an extension. Thank you for reply, probably I could understand.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4