리눅스 C언어 쓰레드(Thread) 사용법 및 예제!
Embeded/리눅스2017. 8. 25. 21:16
반응형
// 쓰레드 변수 선언
pthread_t firstThread;
int threadErr;
// 쓰레드 동작시 실행될 함수
void *threadRun()
{
printf("start Thread");
}
// 쓰레드를 만들고 쓰레드 함수 실행
if(threadErr = pthread_create(&firstThread,NULL,threadRun,NULL))
{
// 에러시 에러 출력
printf("Thread Err = %d",threadErr);
}
그리고 빌드시 옵션에 -pthread를 주고 빌드 하시면 됩니다
밑은 간단한 사용예제입니다
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 | #include <stdio.h> #include <pthread.h> #include <time.h> // 쓰레드 동작시 실행될 함수 void *firstThreadRun() { while(1) { sleep(1); printf("start First Thread\n"); } } void *secondThreadRun() { while(1) { sleep(3); printf("start Second Thread\n"); } } int main() { pthread_t firstThread, seconThread; int threadErr; // 쓰레드를 만들고 쓰레드 함수 실행 if(threadErr = pthread_create(&firstThread,NULL,firstThreadRun,NULL)) { // 에러시 에러 출력 printf("Thread Err = %d",threadErr); } if(threadErr = pthread_create(&seconThread,NULL,secondThreadRun,NULL)) { // 에러시 에러 출력 printf("Thread Err = %d",threadErr); } while(1); } | cs |
컴파일 방법과 간단한 예제 실행 결과입니다
컴파일 하실때 -pthread 옵션 주시는거 잊지마세요~
반응형
'Embeded > 리눅스' 카테고리의 다른 글
리눅스 C언어 타이머(Timer) 사용법 및 예제! (3) | 2017.09.19 |
---|---|
[리눅스] 파일 내용에서 원하는 문자열 찾기!! (0) | 2017.08.31 |
리눅스(우분투) 삼바(samba) 설치 및 설정법 (0) | 2017.08.24 |
민트 리눅스 wifi(무선인터넷) 끊김 문제 해결법 2 (2) | 2016.08.25 |
민트 리눅스 wifi(무선인터넷) 끊김 문제 해결법 1 (0) | 2016.08.16 |