메뉴 건너뛰기

OBG

Programming

API/MFC
2013.07.28 02:58

스레드(CreateThread), EVENT 동기화

MoA
조회 수 617 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

Thread 출처 : http://wory.tistory.com/166

Event 동기화 출처 : http://blog.naver.com/drrich/20054322126


#include <Windows.h>
#include <stdio.h> 
#include <conio.h> 

// HANDLE 
HANDLE event = NULL; 

// Thread_Func 
DWORD WINAPI Thread_Func(PVOID vparam) 

    int* state = (int*)vparam; 
    int count = 0; 
    while ((*state)) { 
        // 신호 대기 
        WaitForSingleObject(event, INFINITE); 
        // 진행 
        printf("Thread_Func : %dn", count); 
        count++; 
        // 스레드 종료 신호 
        SetEvent(event); 
        Sleep(100); 
    } 
    (*state) = 2; 
    return 0; 


// main 
int main() 

    HANDLE    thread = NULL; 
    int        state  = 1; 
    // 이벤트 생성 
    event = CreateEvent(NULL, 0, 0, NULL); 
    SetEvent(event); 
    // 스레드 생성 
    DWORD id; 
    thread = CreateThread(NULL, 0, &Thread_Func, &state, 0, &id); 
    // 메인 루프 
    while (1) { 
        // 신호 대기 
        WaitForSingleObject(event, INFINITE); 
        // 진행 
        printf("main...n"); 
        // 종료 
        if (_kbhit() && getch()=='p') { 
            state=0; 
        } 
        if (state==2) break; 
        // 스레드 종료 신호 
        SetEvent(event); 
        Sleep(100); 
    } 
    // 스레드 강제 종료 
    if (state==1) TerminateThread(thread, 0); 
    // 이벤트 종료 
    SetEvent(event); 
    CloseHandle(event); 
}


http://blog.naver.com/cor2738/150111130866

?

  1. Programming 게시판 관련

  2. 다이얼로그 resize 시 child control의 그래픽 깨짐 해결

  3. 로그 클래스 및 업데이터

  4. 다이얼로그 기반에서 메뉴 내용이 갱신 안되는 문제 해결

  5. MFC Feature Pack: An Introduction

  6. WTL 정리

  7. MSCOMM32.OCX 등록

  8. Windows 10 앱 개발(UWP)

  9. Serial Communication in MFC

  10. UpdateDialogControls

  11. 비베의 MSCOMM.OCX VC++에서 불러쓰기

  12. CDockablePane 배경화면 회색으로 변경

  13. MFC, CHM파일 연동 (context help)

  14. 메시지 펌프

  15. stdafx.h 사용 (미리 컴파일된 헤더)

  16. 모달리스 대화상자

  17. MFC에서 생성,사용되는 파일 확장자

  18. Deploying a Visual C++ Application (배포 방법)

  19. 슬라이더 컨트롤에 툴팁 삽입 (동적 툴팁)

  20. VC++6.0 에서 VC++ 2005로 변환할 경우 형변환 경고 대응방법

  21. 스레드(CreateThread), EVENT 동기화

Board Pagination Prev 1 2 3 ... 4 Next
/ 4
위로