>백엔드 개발 >C++ >C 언어에서 스레드 속성의 스택 크기 가져오기 및 설정

C 언어에서 스레드 속성의 스택 크기 가져오기 및 설정

WBOY
WBOY앞으로
2023-09-13 13:17:02928검색

C 언어에서 스레드 속성의 스택 크기 가져오기 및 설정

C에서 스레드 속성의 스택 크기를 가져오고 설정하려면 다음 스레드 속성을 사용합니다.

pthread_attr_getstacksize()

는 스레드 스택 크기를 가져오는 데 사용됩니다. stacksize 속성은 스레드 스택에 할당된 최소 스택 크기를 제공합니다. 성공적으로 실행되면 0을 반환하고, 그렇지 않으면 임의의 값을 반환합니다.

두 개의 매개변수를 허용합니다:

pthread_attr_getstacksize(pthread_attr_t *attr, size_t *stacksize)

  • 첫 번째 매개변수는 pthread 속성입니다.
  • 두 번째 매개변수는 스레드 속성의 크기입니다.

pthread_attr_setstacksize()

는 새 스레드 스택 크기를 설정하는 데 사용됩니다. stacksize 속성은 스레드 스택에 할당된 최소 스택 크기를 제공합니다. 성공적으로 실행되면 0을 반환하고, 그렇지 않으면 임의의 값을 반환합니다.

두 개의 매개변수를 허용합니다:

pthread_attr_setstacksize(pthread_attr_t *attr, size_t *stacksize)

  • 첫 번째 매개변수는 pthread 속성입니다.
  • 두 번째 매개변수는 새 스택 크기(바이트)입니다.

알고리즘

Begin
   Declare stack size and declare pthread attribute a.
   Gets the current stacksize by pthread_attr_getstacksize() and print it.
   Set the new stack size by pthread_attr_setstacksize() and get the stack size pthread_attr_getstacksize() and print it.
End

예제 코드

#include <stdio.h>
#include <stdlib.h>
#include <pthread.h>

int main() {
   size_t stacksize;
   pthread_attr_t a;
   pthread_attr_getstacksize(&a, &stacksize);
   printf("Current stack size = %d</p><p>", stacksize);
   pthread_attr_setstacksize(&a, 67626);
   pthread_attr_getstacksize(&a, &stacksize);
   printf("New stack size= %d</p><p>", stacksize);
   return 0;
}

출력

Current stack size = 50
New stack size= 67626

위 내용은 C 언어에서 스레드 속성의 스택 크기 가져오기 및 설정의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제