pthread_create시 attr 속성
2019. 10. 21. 22:44ㆍ임베디드/리눅스시스템프로그래밍
pthread_create는 다음과 같이 정의가 되어있고, 순서대로 thread 주소, 속성, 루틴 함수, 루틴 함수의 매개변수가 담겨져 있다
#include <pthread.h>
int
pthread_create(pthread_t *thread, const pthread_attr_t *attr, void *(*start_routine)(void *), void *arg);
attr에 대한 구조체 주소를 넘겨주면 내부적으로는 int pthread_attr_init(pthread_attr_t *attr) 함수가 호출된다. 아래 속성은 man page에서 따온 속성값으로, 프로그래밍적으로 아래 옵션들을 적용해서 스레드를 생성할 수 있다
1. detach 가능한 스레드 생성
2. 스케쥴링 정책과 우선순위 설정 가능
3. 스택 사이즈 변경 가능
예를 들어 detach 스레드 생성시엔 다음과 같이 작성할 수 있다
pthread_attr_t attr;
pthread_attr_init(&attr);
pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
pthread_attr_destory(&attr);
이외에도 속성 관련한 함수가 많아, 유용하게 활용할 수 있다
[출처] http://man7.org/linux/man-pages/man3/pthread_create.3.html
'임베디드 > 리눅스시스템프로그래밍' 카테고리의 다른 글
open과 O_CREAT 그리고 mode_t (0) | 2019.11.01 |
---|---|
쉘 스트립트 sleep (0) | 2019.10.28 |
쉘 스크립트로 log 파일 정리하기 (0) | 2019.10.05 |
쉘 스크립트로 파일 백업하기 (0) | 2019.10.05 |
쉘 스크립트 프로그래밍 - 3 (0) | 2019.10.05 |