www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - Allocating memory from library

reply "Temtaime" <temtaime gmail.com> writes:
Hi !
I just wondered if this code is valid:

void main() {
auto p = my_allocate();

// ...

my_free(p);
}

extern(System):

void *my_allocate();
void my_free(void *);

Where my_allocate and my_free are in the external dll. Main 
question is: is this code transparent to GC? Will not it try to 
collect memory which is pointed by p after my_free?

Thanks!
Mar 08 2014
parent reply "Sean Kelly" <sean invisibleduck.org> writes:
The GC will only scan through and try to ECG memory that it owns. 
So that's safe.
Mar 08 2014
parent "Temtaime" <temtaime gmail.com> writes:
Thanks !
Mar 08 2014