gpt4 book ai didi

c - 在 pthread 中使用 setstacksize 函数设置堆栈大小的限制是多少?

转载 作者:行者123 更新时间:2023-11-30 20:25:54 32 4
gpt4 key购买 nike

当我像这样使用 setstack size 设置堆栈大小时。

    ret=pthread_attr_setstacksize(&attr,1000);
printf("%d\n",ret);
pthread_attr_getstacksize(&attr,&size);

setstacksize 返回非零值,这表明尚未设置大小。getstacksize 正在打印垃圾值。但如果我给出的大小大于 16384,则堆栈将被设置并返回 0。getstacksize 返回 16384。

谁能告诉我为什么setstacksize如果取的大小大于16384,设置堆栈大小有什么限制吗?

最佳答案

来自the manual ,“可能的错误”:

EINVAL: The stack size is less than PTHREAD_STACK_MIN (16384) bytes.

On some systems, pthread_attr_setstacksize() can fail with the error EINVAL if stacksize is not a multiple of the system page size.

关于c - 在 pthread 中使用 setstacksize 函数设置堆栈大小的限制是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27330581/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com