다음을 통해 공유


Just-in-Time 활성화

COM+ JIT(Just-in-Time) 활성화 서비스를 사용하면 유휴 서버 리소스를 보다 생산적으로 활용할 수 있습니다. JIT 활성 상태로 구성 요소를 구성하면, 클라이언트가 개체에 대한 활성 참조를 보유하고 있는 동안 COM+가 해당 구성 요소의 인스턴스를 비활성화할 수 있습니다. 다음 번에 클라이언트가 해당 개체의 메서드를 호출하면 COM+가 클라이언트에 대해 투명하게 적시에(just in time) 개체를 다시 활성화합니다.**

Note참고:

JIT 활성 상태로 구성된 구성 요소의 경우, 개체는 처음 만들 때부터 활성화됩니다.

메서드 호출이 반환될 때 COM+는 해당 개체를 비활성화하지만 컨텍스트는 메모리에 남겨 둡니다. 비활성화된 개체는 비용이 많이 드는 데이터 저장소의 잠금을 포함한 모든 리소스를 해제합니다.

Note참고:

성능 관점에서 보면 ServicedComponent 파생 클래스에서 종료자를 구현하는 대신 이 논리를 DisposeObject 메서드에 두는 것이 더 좋습니다. System.EnterpriseServices.ServicedComponent 프록시에도 종료자가 있지만 이 경우에는 리플렉션을 사용하여 System.EnterpriseServices.ServicedComponent 파생 클래스의 종료자를 호출합니다.

JIT 활성화를 사용하려면 System.EnterpriseServices.ServicedComponent에서 파생된 클래스에 JustInTimeActivationAttribute 특성을 적용합니다. 또한 메서드 호출이 반환될 때 개체가 반드시 비활성화되도록 개체의 완료 비트를 설정해야 합니다. 트랜잭션 구성 요소의 경우 AutoCompleteAttribute를 클래스에 적용하거나 ContextUtil.SetComplete 또는 ContextUtil.SetAbort를 호출할 수 있습니다. 비트랜잭션 구성 요소의 경우 ContextUtil.DeactivateOnReturn을 호출합니다.

Note참고:

자동 트랜잭션을 수행하려면 JIT 활성화가 필요하므로 자동 트랜잭션을 위해 클래스를 구성할 때 JIT 활성화가 암시적으로 사용됩니다.

JIT 활성화를 사용하는 방법에 대한 예제는 방법: JIT 활성화 사용을 참조하십시오.

참고 항목

작업

방법: JIT 활성화 사용

참조

JustInTimeActivationAttribute
System.EnterpriseServices Namespace

개념

사용 가능한 COM+ 서비스 요약

Footer image

Copyright © 2007 by Microsoft Corporation. All rights reserved.