CComSingleThreadModel 클래스
이 클래스는 변수 값을 증가시키고 감소시키는 메서드를 제공합니다.
구문
class CComSingleThreadModel
멤버
공용 Typedefs
속성 | 설명 |
---|---|
CComSingleThreadModel::AutoCriticalSection | CComFakeCriticalSection 클래스를 참조합니다. |
CComSingleThreadModel::CriticalSection | 참조 클래스 CComFakeCriticalSection . |
CComSingleThreadModel::ThreadModelNoCS | 참조 .CComSingleThreadModel |
공용 메서드
이름 | 설명 |
---|---|
CComSingleThreadModel::D ecrement | 지정된 변수의 값을 줄입니다. 이 구현은 스레드로부터 안전하지 않습니다. |
CComSingleThreadModel::Increment | 지정된 변수의 값을 증분합니다. 이 구현은 스레드로부터 안전하지 않습니다. |
설명
CComSingleThreadModel
에서는 변수 값을 증가 및 감소시키는 메서드를 제공합니다. CComMultiThreadModel 및 CComMultiThreadModelNoCS와 달리 이러한 메서드는 스레드로부터 안전하지 않습니다.
일반적으로 CComObjectThreadModel 또는 CComGlobalsThreadModel의 두 typedef
이름 중 하나를 사용합니다CComSingleThreadModel
. 각 typedef
클래스가 참조하는 클래스는 다음 표와 같이 사용되는 스레딩 모델에 따라 달라집니다.
typedef | 단일 스레딩 모델 | 아파트 스레딩 모델 | 무료 스레딩 모델 |
---|---|---|---|
CComObjectThreadModel |
S | S | M |
CComGlobalsThreadModel |
S | M | M |
S= CComSingleThreadModel
; M= CComMultiThreadModel
CComSingleThreadModel
자체에서 세 typedef
개의 이름을 정의합니다. ThreadModelNoCS
는 CComSingleThreadModel
를 참조합니다. AutoCriticalSection
및 CriticalSection
참조 클래스 CComFakeCriticalSection- 중요한 섹션의 소유권을 가져오고 해제하는 것과 관련된 빈 메서드를 제공합니다.
요구 사항
헤더: atlbase.h
CComSingleThreadModel::AutoCriticalSection
사용할 CComSingleThreadModel
typedef
때 이름은 AutoCriticalSection
CComFakeCriticalSection 클래스를 참조합니다.
typedef CComFakeCriticalSection AutoCriticalSection;
설명
CComFakeCriticalSection
중요한 섹션을 제공하지 않으므로 해당 메서드는 아무 작업도 수행하지 않습니다.
CComMultiThreadModel 및 CComMultiThreadModelNoCS 에는 에 대한 AutoCriticalSection
정의가 포함되어 있습니다. 다음 표에서는 스레딩 모델 클래스와 참조 AutoCriticalSection
하는 중요 섹션 클래스 간의 관계를 보여 줍니다.
에 정의된 클래스 | 참조된 클래스 |
---|---|
CComSingleThreadModel |
CComFakeCriticalSection |
CComMultiThreadModel |
CComAutoCriticalSection |
CComMultiThreadModelNoCS |
CComFakeCriticalSection |
또한 AutoCriticalSection
CriticalSection이라는 이름을 사용할 typedef
수 있습니다. CRT 시작 코드를 제거하려는 경우 전역 개체 또는 정적 클래스 멤버를 지정 AutoCriticalSection
해서는 안 됩니다.
예시
CComMultiThreadModel::AutoCriticalSection을 참조하세요.
CComSingleThreadModel::CriticalSection
사용할 CComSingleThreadModel
typedef
때 이름은 CriticalSection
CComFakeCriticalSection 클래스를 참조합니다.
typedef CComFakeCriticalSection CriticalSection;
설명
CComFakeCriticalSection
중요한 섹션을 제공하지 않으므로 해당 메서드는 아무 작업도 수행하지 않습니다.
CComMultiThreadModel 및 CComMultiThreadModelNoCS 에는 에 대한 CriticalSection
정의가 포함되어 있습니다. 다음 표에서는 스레딩 모델 클래스와 참조 CriticalSection
하는 중요 섹션 클래스 간의 관계를 보여 줍니다.
에 정의된 클래스 | 참조된 클래스 |
---|---|
CComSingleThreadModel |
CComFakeCriticalSection |
CComMultiThreadModel |
CComCriticalSection |
CComMultiThreadModelNoCS |
CComFakeCriticalSection |
또한 CriticalSection
AutoCriticalSection이라는 이름을 사용할 typedef
수 있습니다. CRT 시작 코드를 제거하려는 경우 전역 개체 또는 정적 클래스 멤버를 지정 AutoCriticalSection
해서는 안 됩니다.
예시
CComMultiThreadModel::AutoCriticalSection을 참조하세요.
CComSingleThreadModel::D ecrement
이 정적 함수는 p가 가리키는 변수의 값을 감소합니다.
static ULONG WINAPI Decrement(LPLONG p) throw();
매개 변수
p
[in] 감소할 변수에 대한 포인터입니다.
Return Value
감소의 결과입니다.
CComSingleThreadModel::Increment
이 정적 함수는 p가 가리키는 변수의 값을 증가합니다.
static ULONG WINAPI Increment(LPLONG p) throw();
매개 변수
p
[in] 증분할 변수에 대한 포인터입니다.
Return Value
증분 결과입니다.
CComSingleThreadModel::ThreadModelNoCS
사용할 CComSingleThreadModel
때 이름은 typedef
ThreadModelNoCS
단순히 참조합니다.CComSingleThreadModel
typedef CComSingleThreadModel ThreadModelNoCS;
설명
CComMultiThreadModel 및 CComMultiThreadModelNoCS 에는 에 대한 ThreadModelNoCS
정의가 포함되어 있습니다. 다음 표에서는 스레딩 모델 클래스와 참조되는 ThreadModelNoCS
클래스 간의 관계를 보여 줍니다.
에 정의된 클래스 | 참조된 클래스 |
---|---|
CComSingleThreadModel |
CComSingleThreadModel |
CComMultiThreadModel |
CComMultiThreadModelNoCS |
CComMultiThreadModelNoCS |
CComMultiThreadModelNoCS |
예시
CComMultiThreadModel::AutoCriticalSection을 참조하세요.