2017-11-21 16:57 GMT+01:00 Eric Snow <ericsnowcurren...@gmail.com>: >> I understand that moving global variables to _PyRuntime helps to >> clarify how these variables are initialized and then finalized, but >> memory allocators are a complex corner case. > > Agreed. I spent a large portion of my time getting the allocators > right when working on the original _PyRuntime patch. It's tricky > code.
Oh, I forgot to notify you: when I worked on Py_Main(), I got crashes because PyMem_RawMalloc() wasn't usable before calling Py_Initialize(). This is what I call a regresion, and that's why I started this thread :-) I fixed the issue by calling _PyRuntime_Initialize() as the very first function in main(). I also had to add _PyMem_GetDefaultRawAllocator() to get a deterministic memory allocator, rather than depending on the allocator set an application embedding Python, we must be sure that the same allocator is used to initialize and finalize Python. Victor _______________________________________________ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com