DmitryG wrote:Is OpenLisp, especially its memory management subsystem, thread-safe? I suspect only its garbage collector is thread-safe, but other parts are not.
Please, say I'm mistaken
You're right, GC is the only part using threads.
Otherwise, OpenLisp has a BIG global structure that stores "global" values.
Please note that OpenLisp uses it's own virtual memory manager that
has no chance to conflit with malloc or other allocation routines.
For the internal details, the memory manager uses only mmap or VirtualAlloc on memory it reserves when OpenLisp starts.
Then, it only commits pages on demand in this reserved area.
If malloc occurs, its only from system or C library routines.
Christian