先来讲说线程内存相关的东西,主要有下面几条:
#define EAGAIN 11 #define ENOMEM 12 /* Out of memory */
#include <stdio.h>
#include <stdlib.h>
#include <pthread.h>//线程操作所需头文件
int main(void)
{
size_t stack_size = 0; //堆栈大小变量
pthread_attr_t attr; //线程属性结构体变量
//初始化线程属性
int ret = pthread_attr_init(&attr);
if(ret != 0)
{
perror("pthread_attr_init");
return -1;
}
//获取当前的线程栈大小
ret = pthread_attr_getstacksize(&attr, &stack_size);
if(ret != 0)
{
perror("pthread_attr_getstacksize");
return -1;
}
//打印堆栈值
printf("stack_size = %dB, %dk\n", stack_size, stack_size/1024);
return 0;
}#include <stdio.h>
#include <stdlib.h>
#include <pthread.h>//线程操作所需头文件
int main(void)
{
size_t stack_size = 0; //堆栈大小变量
pthread_attr_t attr; //线程属性结构体变量
//初始化线程属性
int ret = pthread_attr_init(&attr);
if(ret != 0)
{
perror("pthread_attr_init");
return -1;
}
stack_size = 1024*20; //堆栈大小设置为20K
ret = pthread_attr_setstacksize(&attr, stack_size);//设置线程堆栈大小
if(ret != 0)
{
perror("pthread_attr_getstacksize");
return -1;
}
stack_size = 0;
ret = pthread_attr_getstacksize(&attr, &stack_size);//获取线程堆栈大小
//打印堆栈值
printf("stack_size = %dB, %dk\n", stack_size, stack_size/1024);
return 0;
}版权声明:本博客文章,大多是本人整理编写,或在网络中收集,转载请注明出处!!
原文地址:http://blog.csdn.net/tennysonsky/article/details/48767415