Blog post on automem

ANtlord via Digitalmars-d-announce digitalmars-d-announce at puremagic.com
Wed May 3 05:43:26 PDT 2017


On Friday, 28 April 2017 at 14:40:03 UTC, Mike Parker wrote:
> Atila was kind enough to do a write up on his automem library 
> for the D Blog, talking about why he did it and showing some of 
> the implementation details. This is officially part of the GC 
> series. The next post in the series will be my @nogc post (I've 
> pushed it back to after DConf).
>
> When I publish the next one, I'll add a page to the blog with 
> each post in the series linked under two categories: 'GC 
> Fundamentals' and 'Memory Management Strategies'. Atila's post 
> sits squarely in the latter. If you have a particular strategy 
> you use for working with D's GC, please let me know and we can 
> talk about a post (guest post or otherwise).
>
> Blog:
> https://dlang.org/blog/2017/04/28/automem-hands-free-raii-for-d/
>
> Reddit:
> https://www.reddit.com/r/programming/comments/682xzc/automem_a_library_for_cstyle_raii_in_d/

Does it possible to use the library with classes? I have a simple 
code that can't be compiled due to GC calling.

import automem.unique : Unique;
import std.experimental.allocator.mallocator: Mallocator;

class MyClass {
	int a;
	this(int a) @nogc {
		this.a = a;
	}
	~this() @nogc {

	}
}
void main() @nogc
{
	auto obj = Unique!(MyClass, Mallocator)(1);
}


Text of error is @nogc function 'D main' cannot call non- at nogc 
destructor 'automem.unique.Unique!(MyClass, 
Mallocator).Unique.~this'


More information about the Digitalmars-d-announce mailing list