pthread_create
2019. 5. 12. 00:41ㆍ임베디드/리눅스시스템프로그래밍
쓰레드들은 code, data, files을 하나로 공유하면서 각각의 프로그램 동작을 위한 개별적으로 register와 stack을 가지게 된다. 그래서 data나 파일 디스크립터같은 경우는 동기화 측면에서 중요하게 다루게 된다. 이를 위해 사용하는 도구는 대표적으로 mutex가 있다
int pthread_create(pthread_t *thread, const pthread_attr_t *attr,
void *(*start_routine) (void *), void *arg);
thread : thread ID 주소
attr : 부여할 특성 전달, 보통 NULL
start_routine : 스레드 메인 함수 역할을 하는 함수 포인터를 전달
arg : (void *)의 변수 주소값 전달
int pthread_join(pthread_t thread, void **retval);
thread : thread ID, ID가 종료되지 않을 때까지 함수는 반환하지 않는다
retval : 스레드가 반환하는 값의 주소값, NULL 가능
Compile and link with -pthread.
https://github.com/surinoel/Linux-SP/blob/master/thread.c
'임베디드 > 리눅스시스템프로그래밍' 카테고리의 다른 글
pthread_mutex_init man page 설치 (0) | 2019.05.16 |
---|---|
재진입성 (0) | 2019.05.15 |
지정한 CPU에서 프로세스 동작 (0) | 2019.05.09 |
컴퓨터 구조로 알아보는 프로세스 친화 (0) | 2019.05.09 |
main의 argv 첫번째 인자 (0) | 2019.05.09 |