Wrt. threadlocal by default: shared module constructors

Denis Koroskin 2korden at gmail.com
Wed May 13 05:51:57 PDT 2009


On Wed, 13 May 2009 16:50:25 +0400, downs <default_357-line at yahoo.de> wrote:

> So .. how will the threadlocal global variables be initialized?
>
> Obviously, they can't be initialized in the static constructor, since  
> that is only run once.
>
> But if the static constructors are run on every new thread, what about  
> the shared variables that only need to be initialized once?
>
> For these reasons, I propose two changes:
>
> 1) Module constructors are run at thread creation
>
> 2) the introduction of _shared module constructors_, who are run before  
> module constructors, at program startup, to initialize the global shared  
> variables.
>
> I don't see any other way to handle these issues.
>
> Feedback appreciated.

static this()
{
}

static shared this()
{
}

static shared ~this()
{
}

static ~this()
{
}

(in that order)

?



More information about the Digitalmars-d mailing list