【发布时间】:2014-12-19 10:38:28
【问题描述】:
我有一些代码如下:
typedef struct _X
{
int array[1000];
}X;
static X x;
int main()
{
x.array[0] =100;
}
我的问题是,在 main() 中,当 x 被引用时,它会在堆栈上消耗 4*1000 字节吗?如果线程堆栈大小有限,它可以粉碎堆栈吗?
【问题讨论】:
-
由于
x被声明为全局线程数无关紧要,因为每个线程都使用x的相同“实例”。要让每个线程都使用自己的x“实例”,它需要被声明为thread local。
标签: c stack stack-overflow