로그인

검색

API/MFC
2013.07.28 02:58

스레드(CreateThread), EVENT 동기화

MoA
조회 수 3939 추천 수 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. 스레드(CreateThread), EVENT 동기화

  3. UpdateDialogControls

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

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

  6. 비주얼 스튜디오 2005 단축키

  7. MFC기반의 CSocket 사용 방법과 예제

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

  9. MFC 클래스 멤버함수 설명서

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

  11. CFile을 이용한 저장/불러오기

  12. HWND와 HINSTANCE

  13. WTL 정리

  14. CPaneDialog의 context menu 안뜨게 하기

  15. 후킹 링크

  16. 리스트 컨트롤 클릭 이벤트

  17. 메시지 펌프

  18. __cdecl , __pascal, __stdcall

  19. CFormView

  20. CreateThread, ExitThread, GetExitCodeThread ...

  21. Windows 10 앱 개발(UWP)

Board Pagination Prev 1 2 3 4 Next
/ 4