IClientVirtualDeviceSet2::Close (VDI)IClientVirtualDeviceSet2::Close (VDI)

적용 대상:Applies to: 예SQL ServerSQL Server(지원되는 모든 버전)yesSQL ServerSQL Server (all supported versions) 적용 대상:Applies to: 예SQL ServerSQL Server(지원되는 모든 버전)yesSQL ServerSQL Server (all supported versions)

Close 함수는 IClientVirtualDeviceSet2::Create에서 만든 가상 디바이스 세트를 닫습니다.The Close function closes the virtual device set created by IClientVirtualDeviceSet2::Create. 그러면 가상 디바이스 세트에 연결된 모든 리소스가 해제됩니다.It results in the release of all resources associated with the virtual device set.


HRESULT IClientVirtualDeviceSet2::Close ();

Return ValueReturn Value

Return ValueReturn Value 설명Explanation
NOERRORNOERROR 가상 디바이스 세트가 성공적으로 닫힌 경우 반환됩니다.This is returned when the virtual device set was successfully closed.
VD_E_PROTOCOLVD_E_PROTOCOL 가상 디바이스 세트가 열리지 않았으므로 아무 작업도 수행되지 않았습니다.No action was taken because the virtual device set was not open.
VD_E_OPENVD_E_OPEN 디바이스가 열려 있었습니다.Devices were still open.


Close 호출은 가상 디바이스 세트에서 사용되는 모든 리소스를 해제해야 하는 클라이언트에 의한 선언입니다.The invocation of Close is a declaration by the client that all resources used by the virtual device set should be released. 클라이언트는 Close를 호출하기 전에 데이터 버퍼 및 가상 디바이스와 관련된 모든 작업이 종료되었는지 확인해야 합니다.The client must ensure that all activity involving data buffers and virtual devices is terminated before invoking Close. OpenDevice에서 반환된 모든 가상 디바이스 인터페이스는 Close로 무효화됩니다.All virtual device interfaces returned by OpenDevice are invalidated by Close.

클라이언트는 Close 호출이 결과를 반환한 후에 가상 디바이스 세트 인터페이스에서 Create 호출을 실행할 수 있습니다.The client is permitted to issue a Create call on the virtual device set interface after the Close call returns. 해당 호출은 후속 BACKUP 또는 RESTORE 작업에 대한 새 가상 디바이스 세트를 만듭니다.Such a call would create a new virtual device set for a subsequent BACKUP or RESTORE operation.

하나 이상의 가상 디바이스가 열려 있을 때 Close를 호출하면 VD_E_OPEN이 반환됩니다.If Close is called when one or more virtual devices are still open, VD_E_OPEN is returned. 이 경우 가능한 경우 적절한 종료를 보장하기 위해 SignalAbort는 내부적으로 트리거됩니다.In this case, SignalAbort is internally triggered, to ensure a proper shutdown if possible. VDI 리소스가 해제됩니다.VDI resources are released. 클라이언트는 IClientVirtualDeviceSet2::Close를 호출하기 전에 각 디바이스에서 VD_E_CLOSE 표시를 기다려야 합니다.The client should wait for a VD_E_CLOSE indication on each device before invoking IClientVirtualDeviceSet2::Close. 클라이언트는 가상 디바이스 세트가 이미 비정상적으로 종료된 상태임을 인식하면 GetCommand에서 VD_E_CLOSE 표시를 예상하지 않으며, 공유 버퍼의 활동이 종료되는 즉시 IClientVirtualDeviceSet2::Close를 호출할 수 있습니다.If the client knows that the virtual device set is already in an Abnormally Terminated state, then it should not expect a VD_E_CLOSE indication from GetCommand, and may invoke IClientVirtualDeviceSet2::Close as soon as activity on the shared buffers is terminated.

다음 단계Next steps

자세한 내용은 SQL Server 가상 디바이스 인터페이스 참조 개요를 참조하세요.For more information, see the SQL Server virtual device interface reference overview.