다음을 통해 공유


VariableDispenser 클래스

정의

패키지를 실행하는 동안 Variables 컬렉션에 액세스합니다. 이 클래스는 상속될 수 없습니다.

public ref class VariableDispenser sealed : Microsoft::SqlServer::Dts::Runtime::DtsObject
public sealed class VariableDispenser : Microsoft.SqlServer.Dts.Runtime.DtsObject
type VariableDispenser = class
    inherit DtsObject
Public NotInheritable Class VariableDispenser
Inherits DtsObject
상속
VariableDispenser

설명

변수 디스펜서를 사용하는 두 가지 시나리오가 있습니다.

  1. 변수를 하나만 사용할 수 있습니다. 이 시나리오에서는 호출 LockOneForRead 또는 LockOneForWrite및 하나의 요소가 있는 컬렉션이 반환됩니다.

  2. 여러 변수를 사용할 수 있습니다. 이 시나리오에서는 각 변수에 대해 하나씩 여러 번 호출 LockForRead 합니다 LockForWrite . 이렇게 하면 읽기용 변수가 포함된 목록과 쓰기용 변수가 포함된 목록 등 두 개의 목록이 작성됩니다. 다음으로, 모든 잠긴 변수가 포함된 컬렉션을 제공하는 호출 GetVariables입니다. 성공하면 GetVariables 실제 잠금이 아닌 변수 이름의 목록인 두 목록이 지워집니다.

잠금을 명시적으로 해제하려면 컬렉션을 호출 Unlock 합니다. 이 메서드는 변수 자체의 잠금을 해제합니다. 실패하면 GetVariables 목록이 변경되지 않은 상태로 유지되며 다시 호출 GetVariables 할 수 있습니다. 여전히 변수를 가져오는 데 성공하지 못한 경우 목록을 지우고 변수 디스펜서를 초기 상태로 되돌리도록 호출 Reset 합니다.

컬렉션에는 Variables 변수의 변수 디스펜서 컬렉션이 잠겨 있는지() 잠금 해제되었는지(true)를 나타내는 속성이false 포함되어 Locked 있습니다. 이 속성을 검토하는 이유는 일부 태스크가 사용 중인 변수에 대한 잠금을 명시적으로 해제하고 두 번 호출 Unlock 하면 오류가 throw되기 때문입니다. 따라서 호출하기 전에 Unlock이 속성을 사용하여 디스펜싱된 컬렉션이 잠겨 있는지 여부를 확인해야 합니다.

중요

VariableDispenser 타임 클래스와 함께 사용됩니다. 데이터 흐름 구성 요소(Microsoft.SqlServer.Dts.Pipeline)를 사용하는 경우 대신 사용해야 IDTSVariableDispenser100 할 수 있습니다. 사용할 변수 디스펜서를 알아보려면 변수를 가져오는 개체에 대한 설명서를 참조하고 메서드의 반환 개체를 확인합니다.

메서드

Contains(String)

예외를 발생시키지 않고 인덱싱을 사용하여 VariableDispenser 컬렉션에서 항목을 검색할 수 있는지 여부를 지정합니다.

Equals(Object)

두 개체 인스턴스가 같은지 확인합니다.

(다음에서 상속됨 DtsObject)
GetHashCode()

이 인스턴스의 해시 코드를 반환합니다.

(다음에서 상속됨 DtsObject)
GetQualifiedName(String)

변수의 정규화된 이름을 반환합니다.

GetVariables(Variables)

읽기 전용 목록 및 읽기/쓰기 목록에 있는 변수를 잠급니다.

LockForRead(String)

읽기 전용 액세스를 위해 잠글 변수 목록에 변수를 추가합니다.

LockForWrite(String)

읽기/쓰기 액세스를 위해 잠글 변수 목록에 변수를 추가합니다.

LockOneForRead(String, Variables)

목록에 변수를 배치하고 읽기 전용 액세스를 위해 잠급니다.

LockOneForWrite(String, Variables)

목록에 변수를 배치하고 읽기/쓰기 액세스를 위해 잠급니다.

Reset()

GetVariables(Variables)에 대한 호출이 실패할 때 읽기 전용 목록과 읽기/쓰기 목록을 모두 지웁니다.

적용 대상