On 10/07/14 20:12, Jonathan Marler wrote:
I had an idea this morning and wanted to post it to see what people think.

I know we have alot of attributes already but I'm wondering if people
think adding a thread attribute could be useful. Something that says a
variable or function or class/struct can only be accessed by code that
has been tagged with the same thread name.  Something like this.

// This variable is allocated as a true shared global
// with a fixed location in memory since it can only
// be accessed by one thread.
@thread:main
int mainThreadGlobal;

@thread:main
int main(string[] args)
{
   // Start the worker thread at some point
}

@thread:worker
void workerLoop()
{
   // do some work , cannot access mainThreadGlobal
}

I'm not sure I understand but if the variable can only be accessed from a single thread, why not make it thread local?

[SNIP]
So what do people think?  Like I said I just thought of this and haven't
had time think about more corner cases so feel free to nit pick:)

BTW, both of these features sounds like a job for AST macros.

--
/Jacob Carlborg

Reply via email to