想象一下:
void *ImCalledByThreads (/*...*/)
{
//some stuff
static typePlaceholder AmIThreadSafe = QuestionTag();
//other stuff
}
这个初始化过程线程安全吗?
即使QuestionTag()
是线程安全的,如果第一个线程运行了该函数并且另一个线程调用了此行代码,会发生什么?是否会检测到该函数只会执行一次?还是说对于多线程来说,这只是一个不好的想法?