In the Windows example, the compiler is one. For Unix, I can believe that malloc uses the same heap only in case of dynamically linked libc. But the assumption in the example was that C runtime is linked statically.
--- bill lam <[EMAIL PROTECTED]> wrote: > I think that oleg meant malloc is different for different compilers, but in > linux world there is only one compiler - gcc, so that it is safe to mix > modules > compiled separately. > > Raul Miller wrote: > > On 4/13/07, Oleg Kobchenko <[EMAIL PROTECTED]> wrote: > >> In C runtime library malloc/free use private local heaps > >> which are local to module--not process. So if client code > >> and J DLL both use the same CRT DLL, then it's OK. > >> But I doubt it, especially in Unix, where each application > >> tends to link libraries statically to avoid compatibility > >> issues. > >> > >> To see it in action, in Visual Studio, create a solution > > ... > > > > Under unix, malloc/free (as well as other address space > > manipulation mechanisms, such as mmap) manage > > per-process memory, not per-module memory. __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
