디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

열혈강의 TCP/IP 책중 리눅스부분 세마포어 설명인데

TCP/IP(219.255) 2011.03.30 15:55:00
조회 234 추천 0 댓글 2

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

void * read(void * arg);
void * accu(void * arg);
static sem_t sem_one;
static sem_t sem_two;
static int num;

int main(int argc, char *argv[])
{
 pthread_t id_t1, id_t2;
 sem_init(&sem_one, 0, 0);
 sem_init(&sem_two, 0, 1);

 pthread_create(&id_t1, NULL, read, NULL);
 pthread_create(&id_t2, NULL, accu, NULL);

 pthread_join(id_t1, NULL);
 pthread_join(id_t2, NULL);

 sem_destroy(&sem_one);
 sem_destroy(&sem_two);
 return 0;
}

void * read(void * arg)
{
 int i;
 for(i=0; i<5; i++)
 {
  fputs("Input num: ", stdout);

  sem_wait(&sem_two);
  scanf("%d", &num);
  sem_post(&sem_one);
 }
 return NULL; 
}
void * accu(void * arg)
{
 int sum=0, i;
 for(i=0; i<5; i++)
 {
  sem_wait(&sem_one);
  sum+=num;
  sem_post(&sem_two);
 }
 printf("Result: %d \\n", sum);
 return NULL;
}

위에가 소스인데  세마포어가 post 와 wait를 통해서 뮤텍스처럼 락걸고 그러는건 알겠는데

전역변수 num 하나만을 통해서 입력받고 sum에 누적이 되는데 이말은

read함수 안에 포문이 1바퀴 돌아서 num을 입력받은후 accu함수 포문이 1바퀴 돌아서 sum에 누적이 되고

다시 read함수로 돌아가 2번째바퀴가 시작되고 이게 반복이 된다는거잖아.   sem_wait(&sem_two);    sem_wait(&sem_one);

이런식으로 0 에서 +1로  +1에서 다시 0으로 해서 열고 닫고 하잖아 이거까진 좋은데 뭔 재주로 read함수에서 accu함수를 왔다 갔다 하는거야?

왜케 이해가 안가지 답답하넹

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
등록순정렬 기준선택
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 사이버 렉카로 가장 피해 입은 것 같은 스타는? 운영자 24/07/22 - -
245914 형들 심심할때 오목이나 한번 해보랑께 ㅋㅋ [2] ★카나데★갤로그로 이동합니다. 11.04.19 73 0
245912 베스트 게시물 보다보니 인공지능 나와서 얘긴데 내 생각에는... [7] NG플라잉갤로그로 이동합니다. 11.04.19 82 0
245911 나 진짜 궁금한데, 리눅스 서버 구축 왜하는거야? [28] 개뉴비(121.187) 11.04.19 285 0
245910 오라클과의 소송때문에 안드로이드의 아키텍쳐가 많이 바뀔거야 [2] 잏힝(61.255) 11.04.19 110 0
245909 횽들....이모티콘 괜찮은거 있으면 써봐요.!! 안졸리니졸리갤로그로 이동합니다. 11.04.19 35 0
245906 솔직히 프로그래머들의 끝이 뭐라고 생각함??? [5] 아퓌누(114.206) 11.04.19 120 0
245905 PHP 에서 쓸껀데 퓨젼챠트 써보신분? [1] Coder갤로그로 이동합니다. 11.04.19 110 0
245904 C의 대부분이 자바로 대체될것이다. [4] 잏힝(61.255) 11.04.19 137 0
245902 MEECL 아 스프링배워 [10] 잏힝(61.255) 11.04.19 58 0
245901 MFC 잘 하시는 분 있으면 저 좀 도와주세요 ㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠ [2] MFC(121.129) 11.04.19 100 0
245900 내가 왔다 헤헤 [6] SODmaster갤로그로 이동합니다. 11.04.19 49 0
245899 java로만 평생 살 수 있을것 같은 사람이 말야 [10] MEECL갤로그로 이동합니다. 11.04.19 142 0
245896 스프링이 대세지? [5] 잏힝(61.255) 11.04.19 71 0
245895 testdisk로 하드복원 재시도중인데.. MEECL갤로그로 이동합니다. 11.04.19 69 0
245894 甲 정사원이랑 乙 상무나 전무면 맞먹나?? [1] ㅇㅇ(222.107) 11.04.19 112 0
245892 형들 임의로 뽑은 값들의 합을 특정한 값과 같게 할수 있음요?? [8] 꾸루룽갤로그로 이동합니다. 11.04.19 67 0
245891 php는 가상 url 어떻게 처리하냐 [2] 허허느님(110.76) 11.04.19 210 0
245890 ლ( ╹ ◡ ╹ ლ) 뿌잉뿌잉~ [2] 듣보킹갤로그로 이동합니다. 11.04.19 70 0
245889 주식 시작한지 1년만에 드디어 1억 만들었다. [5] asfd(112.171) 11.04.19 191 0
245888 질문 합니다 [2] 자료구조론갤로그로 이동합니다. 11.04.19 50 0
245886 거북18호 있냐 ? [1] C_Perl갤로그로 이동합니다. 11.04.18 37 0
245885 php 저장부분좀 알려줘이이잉 [5] Coder갤로그로 이동합니다. 11.04.18 68 0
245884 const 수식자 질문 드려요. [3] 자료구조론갤로그로 이동합니다. 11.04.18 90 0
245883 역시 언어책은 창시자가 쓴책이 진국인듯 [1] [성대아싸]갤로그로 이동합니다. 11.04.18 165 0
245882 궁금 [5] 거북18호갤로그로 이동합니다. 11.04.18 65 0
245881 국내 유명대기업SI업체에서 스카웃제의가 들어왔다는데.. [4] 주방아가씨갤로그로 이동합니다. 11.04.18 216 0
245879 형들 나좀 도와줘 디버깅 하면 창이 바로 꺼지는데ㅠㅠ [7] tHY갤로그로 이동합니다. 11.04.18 144 0
245878 프로그래밍은 뇌의 성능의 싸움이다 [5] 허허벌판갤로그로 이동합니다. 11.04.18 133 0
245876 씨언어로 밑변환공식을 증명하려면? [2] 씨프조까(220.74) 11.04.18 149 0
245875 맥용 곰플레이어가 나왔네 [3] 분당살람갤로그로 이동합니다. 11.04.18 313 0
245874 거북 18호는 보긔 [5] 닌텐도DS갤로그로 이동합니다. 11.04.18 88 1
245873 글쓰기 숙제인데 [9] 워너투비갤로그로 이동합니다. 11.04.18 82 0
245872 도와줘..형들.. [32] 거북18호갤로그로 이동합니다. 11.04.18 166 1
245871 횽들 나 ime구현해야돼 [2] 부유한플머갤로그로 이동합니다. 11.04.18 77 0
245870 근데 어짜피 우리나라자체가 대기업중심사화아닌가요 다른분야도 대기업중심 [2] 탱구와서현잉갤로그로 이동합니다. 11.04.18 61 0
245869 질문이요. [11] 유동닉(118.218) 11.04.18 81 0
245868 고정닉분들이많군요 거북18호갤로그로 이동합니다. 11.04.18 42 0
245867 횽들, 내가 문제 하나 내볼께 [15] 부유한플머갤로그로 이동합니다. 11.04.18 91 0
245866 저기근데 삼성에의해서 IT다시살아날꺼같지않나요? [5] 탱구와서현잉갤로그로 이동합니다. 11.04.18 147 0
245864 이해가안되는데;;이해좀시켜주세요.. [2] 거북18호갤로그로 이동합니다. 11.04.18 55 0
245861 아나 언어 이해 제일 안되는데 [] 배열 개빡치네 [2] 돌고래스피커갤로그로 이동합니다. 11.04.18 84 0
245859 저기 삼성핸드폰 os가그렇게 쓰래기인가요? [1] 탱구와서현잉갤로그로 이동합니다. 11.04.18 102 0
245856 퇴갤할래 [5] 워너투비갤로그로 이동합니다. 11.04.18 45 0
245855 형들 밑에 매크로 질문글올렸는데 윤아야사랑해갤로그로 이동합니다. 11.04.18 38 0
245854 사람 뇌로 만든다면 몸을 가지고있을때와는 달리 100% 활용가능하겟지않냐 [3] 돌고래스피커갤로그로 이동합니다. 11.04.18 85 0
245853 학력 딸려도 취직할 수 있을까 [2] 객사(211.204) 11.04.18 88 0
245852 먼 훗날 이런 사건 생기는거 아니냐 [5] MEECL갤로그로 이동합니다. 11.04.18 96 0
245851 병신님 인공지능 공부하신다고 하셧죠? 그럼 이소스 분석좀해주세요. [3] #include<stdio.h&갤로그로 이동합니다. 11.04.18 89 0
245850 어렸을때부터 생각했던거 워너투비갤로그로 이동합니다. 11.04.18 30 0
245849 형들 매크로 프로그램을 하나 만드려고하는데 어떤걸 공부해야되? [1] 윤아야사랑해갤로그로 이동합니다. 11.04.18 55 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2