mfc 쓰레드 예제

대화 상자 리소스(사용자 인터페이스 스레드와 연결)를 열고 대화 상자 리소스를 마우스 오른쪽 단추로 클릭하고 이벤트를 선택합니다. „TempChar”는 실제로 무효화(또는 무효*)에 대한 포인터입니다. 이것은 스레드에 무엇이든 운반 할 수 있으며, 제안한 대로 아무 것도 할 수 없으며 XML 문자열에 대한 포인터 또는 구조의 배열이 될 수 있습니다… 아무것도. 이 매개 변수는 스레드와 통신 할 수 있도록, 그것은 에 작동해야하는 데이터 또는 프로그램의 나머지 가 신호를 할 수 있도록 동기화 객체를 얻는 방법에 대한 정보, 또는 스레드 fo에 제공해야 할 다른 것을 할 수 있습니다 r 실행. TempChar는 LPVOID pParam (LPVOID는 void *와 동일합니다)에서 스레드에 전달되는 것입니다. 이 문서는 Multithreading 프로그래밍 초보자를 대상으로 작성되었으며이 연결의 몇 가지 문제를 설명하기 위해 노력했으며 초보자에게 도움이되기를 바랍니다. 스레드를 만들 수 있는 방법을 보여 주며 스레드 함수의 코드로 인해 각 스레드의 프로세서 시간이 어떻게 달라지는지 보여 줍니다. 2-해당 스레드가 실행될 때마다 실행 중인 코드의 일부를 표시합니다. 다중 스레드 프로그래밍을 작성하고 디버깅하는 것은 본질적으로 복잡하고 까다로운 작업입니다. 다중 스레드 항목은 다중 스레드 프로그래밍의 기본 사항을 가르치지 않고 다중 스레드 프로그램에서 MFC를 사용하는 방법만 설명합니다. Visual C++에 포함된 다중 스레드 MFC 샘플은 MFC에 포함되지 않은 몇 가지 다중 스레드 추가 기능 및 Win32 API를 보여 줍니다. 그러나, 그들은 단지 출발점이 될 것입니다.

(선택 사항) 스레드에 대 한 원하는 스택 크기입니다. 기본값은 생성 스레드와 동일한 크기 스택입니다. MFC의 모든 멤버가 클래스 멤버로 작동하는 것은 아닙니다. 우리는 또한 전 세계적으로 일부 기능에 액세스 할 수 있습니다. 이러한 함수는 Afx로 시작합니다. AfxBeginThread, AfxEndThread는 MFC 스레드에서 가장 널리 유용한 기능입니다. AfxBeginThread 함수를 사용하여 스레드를 만듭니다. AfxBeginThread 구문: (선택 사항) 원하는 보안 특성입니다.

기본값은 상위 스레드와 동일한 액세스 권한입니다. 이 보안 정보의 형식에 대한 자세한 내용은 Windows SDK의 SECURITY_ATTRIBUTES를 참조하십시오. 작업자 스레드에 대해 앞에서 설명한 것처럼 함수를 정의하고 스레드에서 함수의 책임을 결정합니다. 데모 앱에서 각 작업자 스레드의 기능에 대해 2개의 책임을 가진 5개의 다른 작업자 스레드를 만들 수 있습니다: 이미 MFC 콘솔 응용 프로그램이 아닌 응용 프로그램으로 앱을 시작한 경우에도 앱에서 스레드를 사용할 수 있습니다. 1) 먼저 설정으로 이동하여 설정하여 설정합니다. es MFC 를 정적 라이브러리로 2) 다음 이미 프로그램 3에 있어야 하는 #include „stdafx” 아래 #include 추가) 한편, #include 당신은 „windows.h” 또는 #include „mmsystem.h”이 두 _above_를 넣어 #include „stdafx.h” 4) 조심, 순서 #includes 많은 문제 선언! (컴파일 중에 오류가 발생하면 작동 될 때까지 순서를 바함). 샘플 코드는 위의 코드 샘플을 사용하여 작업자 스레드를 만드는 방법을 설명합니다. 원하는 경우 응용 프로그램에서 추가 스레드를 만들 수 있습니다. 사용자가 완료될 때까지 기다리지 않으려는 경우 백그라운드 또는 유지 관리 작업을 처리하기 위해 이 작업을 수행할 수 있습니다.

MFC 응용 프로그램의 모든 스레드는 CWinThread 개체로 표시됩니다. 대부분의 경우 이러한 개체를 명시적으로 만들 필요가 없습니다. 대신 CWinThread 개체를 만드는 프레임워크 도우미 함수 AfxBeginThread를 호출합니다. 스레드는 실행 경로입니다. 프로세스에는 하나 이상의 스레드가 필요합니다. 그러나 한 스레드를 더 포함할 수 있습니다.