COMAdminTxIsolationLevelOptions 열거형(comadmin.h)
트랜잭션에 사용할 격리 수준을 나타냅니다.
Syntax
typedef enum COMAdminTxIsolationLevelOptions {
COMAdminTxIsolationLevelAny = 0,
COMAdminTxIsolationLevelReadUnCommitted,
COMAdminTxIsolationLevelReadCommitted,
COMAdminTxIsolationLevelRepeatableRead,
COMAdminTxIsolationLevelSerializable
} ;
상수
COMAdminTxIsolationLevelAny 값: 0 모든 격리 수준이 지원됩니다. 이 격리 수준이 있는 다운스트림 구성 요소는 항상 즉각적인 업스트림 구성 요소에서 사용하는 것과 동일한 격리 수준을 사용합니다. 트랜잭션의 루트 개체에 COMAdminTxIsolationLevelAny로 구성된 격리 수준이 있는 경우 해당 격리 수준은 COMAdminTxIsolationLevelSerializable이 됩니다. |
COMAdminTxIsolationLevelReadUnCommitted 트랜잭션은 다른 트랜잭션에 의해 수정되는 경우에도 모든 데이터를 읽을 수 있습니다. 트랜잭션 중에 모든 유형의 새 데이터를 삽입할 수 있습니다. 이는 가장 안전한 격리 수준이지만 가장 높은 동시성을 허용합니다. |
COMAdminTxIsolationLevelReadCommitted 트랜잭션은 커밋되지 않은 다른 트랜잭션에서 수정되는 데이터를 읽을 수 없습니다. 트랜잭션 중에 모든 유형의 새 데이터를 삽입할 수 있습니다. Microsoft SQL Server 기본 격리 수준입니다. |
COMAdminTxIsolationLevelRepeatableRead 현재 트랜잭션에서 읽은 데이터는 현재 트랜잭션이 완료될 때까지 다른 트랜잭션에서 변경할 수 없습니다. 트랜잭션 중에 모든 유형의 새 데이터를 삽입할 수 있습니다. |
COMAdminTxIsolationLevelSerializable 현재 트랜잭션에서 읽은 데이터는 현재 트랜잭션이 완료될 때까지 다른 트랜잭션에서 변경할 수 없습니다. 현재 트랜잭션에 영향을 주는 새 데이터를 삽입할 수 없습니다. 가장 안전한 격리 수준이며 기본값이지만 가장 낮은 수준의 동시성을 허용합니다. |
설명
이 열거형은 트랜잭션을 사용하는 구성 요소에 대한 트랜잭션 격리 수준을 구성하는 데 사용됩니다. 또한 IServiceTransactionConfigBase::IsolationLevel에 매개 변수로 전달되어 구성 요소 없이 트랜잭션 서비스를 사용하기 위한 격리 수준을 구성하는 데도 사용됩니다. 이 메서드는 CoCreateActivity에서 만든 작업을 통해 제출된 작업 또는 CoEnterServiceDomain 및 CoLeaveServiceDomain 호출 사이에 묶인 작업에 대해 CServiceConfig를 통해 호출됩니다.
다운스트림 구성 요소가 업스트림 구성 요소보다 높은 격리 수준으로 구성되고 트랜잭션에 참여하려고 하면 오류 결과와 트랜잭션이 중단됩니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows XP [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱만 해당] |
머리글 | comadmin.h |