Share via


완료 비트 설정

COM+는 다음과 같이 컨텍스트 속성의 상태 완료 비트에 따라 JIT 활성화 개체를 비활성화합니다.

  • 완료된 비트가 True로 설정되면 현재 메서드 호출이 반환되면 COM+에서 개체를 비활성화합니다.
  • 완료된 비트가 False로 설정되면 현재 메서드 호출이 반환되면 개체가 활성 상태로 유지됩니다.

기본적으로 완료 비트는 개체가 만들어지고 컨텍스트가 초기화될 때 False로 설정됩니다. (모든 JIT 활성화 개체는 자체 컨텍스트에서 만들어지므로 설정할 자체 완료 비트가 있습니다.) 그러나 자동 완성 속성을 사용하여 메서드별로 이 기본 설정을 변경할 수 있습니다. 다음 방법으로 완료 비트를 설정할 수 있습니다.

IContextState 사용

IContextState::SetDeactivateOnReturn을 사용하여 완료 비트를 True 또는 False로 설정할 수 있습니다.

IContextState::GetDeactivateOnReturn을 사용하여 개체 컨텍스트에서 완료된 비트의 현재 상태 가져올 수 있습니다.

IObjectContext 사용

IObjectContext에서 다음 메서드를 사용하여 트랜잭션에서 투표하는 데 사용되는 일관된 비트를 동시에 설정하면서 완료 비트를 설정할 수 있습니다.

  • SetComplete 는 완료되었음을 알리고 현재 트랜잭션을 커밋하기 위해 투표한다는 신호를 보냅니다. 완료 비트와 일관된 비트를 모두 True로 설정합니다.
  • SetAbort 는 완료되었음을 알리고 현재 트랜잭션을 종료합니다. 완료 비트를 True로 설정하고 일관된 비트를 False로 설정합니다.
  • EnableCommit 은 완료되지 않았지만 트랜잭션을 커밋하기 위해 투표한다는 신호를 보냅니다. 완료 비트를 False로 설정하고 일관된 비트를 True로 설정합니다.
  • DisableCommit 은 사용자가 완료되지 않았으며 현재 트랜잭션을 커밋하지 않기로 투표한다는 신호를 보냅니다. 일반적으로 상태가 일치하지 않기 때문입니다. 완료 비트와 일관된 비트를 모두 False로 설정합니다.

COM+ Just-In-Time 활성화 개념

구성 요소에 대한 JIT 활성화 사용

개체 풀링 및 COM+ JIT 활성화

트랜잭션 및 COM+ JIT 활성화