NdisInterlockedPopEntrySList 宏 (ndis.h)

NdisInterlockedPopEntrySList 函数从排序的单独链接列表中删除第一个条目。

语法

void NdisInterlockedPopEntrySList(
        SListHead,
  [in]  Lock
);

参数

SListHead

指向已初始化的序列单一链接列表的标头的指针,将从该列表返回条目。

[in] Lock

指向调用方提供的旋转锁的指针,当前不由调用方持有。

返回值

备注

驱动程序在调用 NdisInterlockedPopEntrySList不得持有给定的锁。 如有必要,驱动程序应在进行此调用之前调用 NdisReleaseSpinLock 函数。 NdisInterlockedPopEntrySList 本身必须获取此旋转锁,才能以多处理器安全的方式删除 S-List 中的第一个条目(如果有)。

调用方必须为 Lock 提供驻留存储,该存储必须在初始调用任何 NdisInterlocked 之前使用 NdisAllocateSpinLock 函数进行初始化 。SList 函数。

如果在 IRQL >= DISPATCH_LEVEL 调用 NdisInterlockedPopEntrySList,则 ListHead 参数的存储必须是驻留的。

要求

要求
最低受支持的客户端 NDIS 6.0 和 NDIS 5.1 驱动程序支持 (请参阅 Windows Vista 中的 NdisInterlockedPopEntrySList (NDIS 5.1) ) 。 NDIS 5.1 驱动程序支持 (请参阅 Windows XP 中的 NdisInterlockedPopEntrySList (NDIS 5.1) ) 。
目标平台 桌面
标头 ndis.h (包括 Ndis.h)
IRQL 任何级别

另请参阅

NdisAllocateSpinLock

NdisFreeSpinLock

NdisInitializeSListHead

NdisInterlockedPushEntrySList

NdisQueryDepthSList

NdisReleaseSpinLock