다음을 통해 공유


DeleteSynchronizationBarrier 함수(synchapi.h)

동기화 장벽을 삭제합니다.

구문

BOOL DeleteSynchronizationBarrier(
  [in, out] LPSYNCHRONIZATION_BARRIER lpBarrier
);

매개 변수

[in, out] lpBarrier

삭제할 동기화 장벽에 대한 포인터입니다.

반환 값

DeleteSynchronizationBarrier 함수는 항상 를 반환합니다TRUE.

설명

DeleteSynchronizationBarrier 는 더 이상 필요하지 않은 동기화 장벽을 해제합니다. EnterSynchronizationBarrier를 호출한 직후 DeleteSynchronizationBarrier를 호출하는 것이 안전합니다. 이 함수는 장벽을 해제하기 전에 장벽의 모든 스레드가 사용을 완료하도록 하기 때문입니다.

동기화 장벽이 삭제되지 않으면 스레드는 장벽에 들어갈 때 SYNCHRONIZATION_BARRIER_FLAGS_NO_DELETE 플래그를 지정할 수 있습니다. 이 플래그를 사용하면 함수가 삭제 안전에 필요한 추가 작업을 건너뛰어 성능을 향상시킬 수 있습니다. 장벽을 사용하는 모든 스레드는 이 플래그를 지정해야 합니다. 스레드가 없으면 플래그가 무시됩니다. 이 플래그가 적용되는 동안 장벽을 삭제하면 핸들 액세스가 잘못되어 하나 이상의 스레드가 영구적으로 차단될 수 있으므로 SYNCHRONIZATION_BARRIER_FLAGS_NO_DELETE 사용할 때는 주의해야 합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 8 [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2012 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 synchapi.h
라이브러리 Kernel32.lib
DLL Kernel32.dll

참고 항목

EnterSynchronizationBarrier

InitializeSynchronizationBarrier

동기화 장벽

VBS Enclave에서 사용할 수 있는 Vertdll API