On Thursday, 26 February 2015 at 23:04:28 UTC, Steven Schveighoffer wrote:
On 2/26/15 4:40 PM, "Marc =?UTF-8?B?U2Now7x0eiI=?= <schue...@gmx.net>" wrote:
On Thursday, 26 February 2015 at 18:08:28 UTC, Steven Schveighoffer wrote:
On 2/26/15 12:56 PM, "Marc =?UTF-8?B?U2Now7x0eiI=?=
<schue...@gmx.net>" wrote:
On Thursday, 26 February 2015 at 16:51:30 UTC, Steven Schveighoffer
wrote:
As talked about before, running dtors in the originating thread can
solve this problem.

This probably implies forcibly destroying objects whose creating thread
terminated.

I don't think so, those objects can just be destroyed by the
GC-collection running thread. If the thread is no longer present,
there can't be a race.

That's true. However, what if the destructors access global
(thread-local) variables? Is that already disallowed?

Hm... I don't know. Is it "disallowed?" I don't think so (a simple test would suffice), but if any code exists today that does it, it's very very wrong :) I would suspect that such code should be banned.

By "disallowed", I indeed mean "banned". Unfortunately, something that's just banned will sooner or later be used by someone, unless it's also statically prevented by the compiler.

Reply via email to