RtnEnterCriticalLock

RtnEnterCriticalLock waits on the associated CriticalLock until no other thread is inside a RtnEnterCritcalLock RtnLeaveCriticalLock pairing.  If RtnEnterCriticalLock is called for a particular CriticalLock structure, then RtnEnterCriticalLock should not be called again until after RtnLeaveCriticalLock is called. The time spent in a CriticalLock should be as short as possible.

NOTE: CriticalLocks may be used regardless of process or thread context, so they are safe to use in any routine within a NAL NIC driver for controlling access to NIC hardware.

IMPORTANT! It is NOT safe to nest CritcalLocks.

Syntax

VOID RtnEnterCriticalLock(
    CriticalLock *pLock
);

Parameters

pLock

Pointer to a critical lock data structure to wait on.

Return Value

None.

Requirements

Minimum Supported Version

RTX64 2013

NOTE: RTX64 Network Abstraction Layer (NAL) support requires RTX64 4.0 or later

Header

rtnapi.h

Library

To use with the NAL: RTX64Nal.lib

To use with the TCP/IP Stack: RtTcpip.lib