수다닷컴

  • 해외여행
    • 괌
    • 태국
    • 유럽
    • 일본
    • 필리핀
    • 미국
    • 중국
    • 기타여행
    • 싱가폴
  • 건강
    • 다이어트
    • 당뇨
    • 헬스
    • 건강음식
    • 건강기타
  • 컴퓨터
    • 프로그램 개발일반
    • C언어
    • 비주얼베이직
  • 결혼생활
    • 출산/육아
    • 결혼준비
    • 엄마이야기방
  • 일상생활
    • 면접
    • 취업
    • 진로선택
  • 교육
    • 교육일반
    • 아이교육
    • 토익
    • 해외연수
    • 영어
  • 취미생활
    • 음악
    • 자전거
    • 수영
    • 바이크
    • 축구
  • 기타
    • 강아지
    • 제주도여행
    • 국내여행
    • 기타일상
    • 애플
    • 휴대폰관련
  • 프로그램 개발일반
  • C언어
  • 비주얼베이직

API 쓰레드부분 질문입니다.

연체리

2023.04.01

#include iostream.h
#include windows.h
void Producer(void* arg)
{
int i;
for(i=10; i20; i++)
cout Producer i endl;
}
void Consumer(void* arg)
{
int i;
for(i=20; i30; i++)
cout Consumer i endl;
}
void main()
{
HANDLE hThreadVector[2];
DWORD ThreadID;
hThreadVector[0] = CreateThread (NULL, (unsigned)0,
(LPTHREAD_START_ROUTINE) Producer,
NULL, 0, (LPDWORD)&ThreadID);
hThreadVector[1] = CreateThread (NULL, 0,
(LPTHREAD_START_ROUTINE) Consumer,
NULL, 0, (LPDWORD)&ThreadID);
int i;
for(i=0; i10; i++)
cout Main i endl;
WaitForMultipleObjects(2,hThreadVector,TRUE,INFINITE);
}

다음과 같은 소스가 있습니다. 물론 컴파일도되고 실행도 됩니다.
하지만 몇번 실행하다보면(3번이상연속으로 계속실행)최초 출력되는 main이 9까지 찍힌후 Producer를 찍어줘야하는데
main 은 8을 두번찍고 Producer과 Consumer를 찍어주고 난후에 main = 9가 맨나중에 찍힙니다.
과제이긴 한데 문제점을 모르니 아예 갈피를 못잡겠네요 쓰레드 부분에서 오는 문제점인거같은데
왜그런건가요 도와주세요

신청하기





COMMENT

댓글을 입력해주세요. 비속어와 욕설은 삼가해주세요.

  • 한가람

    아~~ 설명 지댑니다~ 이해가쏙되네요 ㄳㄳ
    제가 이거들고 교수님께 갔는데 넘 귀찮은 듯이 설명한거와는 다르게 ㅠㅠ 감사합니다.
    나머지 부분은 제가 해볼께요 ㅋㅋㅋ

  • 키클

    이벤트쪽은 msdn에서 CreateEvent나 네이버에서 검색해보면 자료가 많이 있으니 찾아서 확인해보세요.
    도움이 되시길해서 그냥 적어봅니다

  • 올해1살

    정답은 아니구요. 쓰레드까리 연동해서 동기화를 맞추려면, 동기화 처리가 필요해요. 일반적으로, 이벤트를 많이 쓰거든요. CreateEvent, WaitForSingleObject 등을 이용해서, 서로 동기화를 맞추죠.
    님께서 올린소스를 제가 실행해본건 아니라서 모르겠지만, 쓰레드를 2개 생성한후, WaitForMultipleObjects 함수를 호출하셨는데, 쓰레드가 실행된후, 그러니까, 쓰레드 실행시 호출되는 함수, Producer, Consumer

번호 제 목 글쓴이 날짜
2694950 자바스크립트로 화면에 내용을 뿌려줄때 접근성 (3) 꺆잉 2025-05-16
2694921 보더 레이아웃 안에 플로우 레이아웃 넣는방법? 초롱 2025-05-15
2694894 웹 프로그래밍 관련해서 질문합니다. 창의적 2025-05-15
2694868 컨택트 폼 7에서 textarea 높이 조정 영글 2025-05-15
2694818 line-height값이 적용이 안되는데 왜 그런 거예요?. letter-spacing,line-height의 기준?? (2) 풍란 2025-05-14
2694795 이것 어떻게 좀 해결좀;; (3) 개럭시 2025-05-14
2694724 코딩시 폰트 문제; ㅠ 후력 2025-05-13
2694696 텍스트박스 입력에 관한 문제입니다. 딥공감 2025-05-13
2694668 [질문] 페이퍼비전 PointLight 관련 질문 드려요.. 두바다찬솔 2025-05-13
2694611 Flash Lite 2.1에서 BitmapData와 Matrix 지원안하나요? (3) 이플 2025-05-12
2694582 IE & 파이어폭스 (2) 흙이랑 2025-05-12
2694553 무비클립안의 duplicate 발동이 안돼네요; 딥보라 2025-05-12
2694523 자바 애플릿 질문좀 ^^ (6) 동이 2025-05-12
2694494 [질문] JAVA 또는 C++ 로 프로그램 개발시.. 레지스터리 등록 관련 의문점? (3) 우람늘 2025-05-11
2694469 익스6에서 css버그 나오는것 해결방법좀요 !!!! (6) 원술 2025-05-11
2694442 로컬에선 잘 나오는데 운영에 반영하면 이상하게 나와요. (8) 목화 2025-05-11
2694412 [질문] 이미지 로딩후 사이즈 조절할때 (1) 아담 2025-05-11
2694391 설치형 블로그 쓰시는 분들 어떤거 쓰세요?? (7) AngelsTears 2025-05-10
2694362 Microsoft SQL Server에서 서버만드는법 어둠 2025-05-10
2694333 for문으로 돌린 이름의 제어 (4) 레이 2025-05-10
<<  이전  1 2 3 4 5 6 7 8 9 10  다음  >>

수다닷컴 | 여러분과 함께하는 수다토크 커뮤니티 수다닷컴에 오신것을 환영합니다.
사업자등록번호 : 117-07-92748 상호 : 진달래여행사 대표자 : 명현재 서울시 강서구 방화동 890번지 푸르지오 107동 306호
copyright 2011 게시글 삭제 및 기타 문의 : clairacademy@naver.com