вторник, 27 апреля 2010 г.

Как изменить размер стека потока средствами pthread-функций

pthread_attr_t threadAttr;
pthread_t tid_;

// initialize the thread attribute
assert(!pthread_attr_init(&threadAttr));

// Set the stack size of the thread (for example 2 Mb)
assert(!pthread_attr_setstacksize(&threadAttr, 1024*1024*2));

size_t stackSize;

// Проверим, точно ли у нас размер стека 2 Mb
assert(!pthread_attr_getstacksize(&threadAttr, &stackSize));
printf("The stack size is %d. ***\n", (int) stackSize);

// Создаём поток с заданным размером стека
assert(!pthread_create(&tid_, &threadAttr, thread_func, function_));

// подчистим за собой
assert(!pthread_attr_destroy(&threadAttr));

Комментариев нет:

Отправить комментарий

Постоянные читатели

Архив блога