An Issue I Wish To Raise Awareness On
Kagamin via Digitalmars-d
digitalmars-d at puremagic.com
Thu Jul 20 03:15:26 PDT 2017
On Wednesday, 19 July 2017 at 20:59:03 UTC, Atila Neves wrote:
> Not necessarily - the reference counted smart pointer doesn't
> have to be `shared` itself to have a `shared` payload.
Yes, but it can be done either way. It's actually what Jack is
trying to do: make stdout shared and reference counted:
https://issues.dlang.org/show_bug.cgi?id=15768#c7
> I'm not even entirely sure what the advantage of it being
> `shared` would be, or even what that would really mean.
It will be thread safe and its lifetime will be automatically
managed.
> You've definitely made me wonder about complicated cases, but
> I'd argue that they'd be rare. Destructors are (bar manually
> calling them) run in one thread. I'm having trouble imagining a
> situation where two threads have references to a `shared`
> object/value that is going to be destroyed deterministically.
A mutex, a file, a socket, any shareable resource. Though I agree
that reference counting of shared resources should be optimized
by thread local counters.
More information about the Digitalmars-d
mailing list