EnterCriticalSection (Kernel32)
Usage
Private Structure CRITICAL_SECTION
Private DebugInfo As IntPtr
Private LockCount As Integer
Private RecursionCount As Integer
Private OwningThread As IntPtr
Private LockSemaphore As IntPtr
Private SpinCount As UIntPtr
End Structure
Private Declare Sub EnterCriticalSection Lib "kernel32" (ByRef lpCriticalSection As CRITICAL_SECTION)
Private Declare Sub InitializeCriticalSection Lib "kernel32" (ByRef lpCriticalSection As CRITICAL_SECTION)
Private Declare Sub LeaveCriticalSection Lib "kernel32" (ByRef lpCriticalSection As CRITICAL_SECTION)
Dim mtCritSect As CRITICAL_SECTION
InitializeCriticalSection(mtCritSect)
EnterCriticalSection(mtCritSect)
LeaveCriticalSection(mtCritSect)