On Thursday, 24 April 2014 at 20:09:38 UTC, Justin Whear wrote:
You can use GC.addRoot() from core.memory before passing the
pointer to
the C function, then use GC.removeRoot in your myFree function.
Perfect, thanks!
Is it possible to temporarily prevent the garbage collector from
collecting a memory block even if there are no references to it?
The use case is as follows: I want to call a C library function
which expects to take ownership of a buffer. It looks something
like this:
alias FreeFunc =
On Saturday, 19 April 2014 at 12:26:16 UTC, Andrej Mitrovic via
Digitalmars-d-learn wrote:
On 4/19/14, Lars T. Kyllingstad via Digitalmars-d-learn
wrote:
Say I have two structs, defined like this:
struct A { /* could contain whatever */ }
struct B { A a; }
My question is, is it
Say I have two structs, defined like this:
struct A { /* could contain whatever */ }
struct B { A a; }
My question is, is it now guaranteed that A.sizeof==B.sizeof,
regardless of how A is defined (member variable types, alignment,
etc.)? More to the point, say I have a function foo()