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

Reply via email to