On Tuesday, 11 April 2017 at 08:09:15 UTC, Martin Nowak wrote:
On Sunday, 9 April 2017 at 10:22:49 UTC, Atila Neves wrote:
I did not. Thanks for telling me!

The way I wrote it RefCounted!(shared T) works - RefCounted doesn't have to be shared itself, but I guess it could be.

I think the other design is slightly more correct, having a single thread own a shared value => RefCounted!(shared T), having multiple threads own a value (which is transitively shared) => shared(RefCounted!T).

The latter is also neede for `static shared RC!T rc;`.

Unfortunately I later remembered that because it has a destructor it can't be shared and not shared with the sample implementation. And I'd really like to avoid having to have two different names like Rust does with Rc and Arc.

Atila

Reply via email to