StorPortInterlockedPopEntrySList 函数 (storport.h)
从 Storport 托管单项链接列表的前面删除项。 对列表的访问在多处理器系统上同步。
语法
语法
ULONG StorPortInterlockedPopEntrySList(
[in] PVOID HwDeviceExtension,
[in, out] PSTOR_SLIST_HEADER SListHead,
[out] PSTOR_SLIST_ENTRY *Result
);
参数
[in] HwDeviceExtension
指向主机总线适配器(HBA)的硬件设备扩展的指针。
[in, out] SListHead
指向表示单向链接列表头的 STOR_SLIST_HEADER 结构的指针。 此结构被视为不透明,仅供 Storport 驱动程序使用。
[out] Result
指向列表条目指针的指针。 返回的值是指向从列表前面删除的项的指针。 如果列表为空,则在 结果指向的值中返回 NULL。
返回值
StorPortInterlockedPopEntrySList 返回以下状态代码之一:
返回代码 | 描述 |
---|---|
|
此函数未在活动作系统上实现。 |
|
列表项已成功从列表中删除或已为空。 |
|
SListHead 或 结果 中的指针 NULL。 |
言论
当列表中没有条目时,StorPortInterlockedPopEntrySList 也会返回 STATUS_SUCCESS。 必须为 NULL 计算 结果 引用的指针值,以验证未返回任何条目。
StorPortInterlockedPopEntrySList 不会释放它返回的列表项。 列表的任何解除分配代码都必须注意释放为在边界对齐的任何调整之前获取的位置的列表条目分配的内存。 Result 指向的值可能不是由于 MEMORY_ALLOCATION_ALIGNMENT调整而分配的原始缓冲区位置。 请参阅 StorPortInterlockedPushEntrySList的备注。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | 从 Windows 8 开始可用。 |
目标平台 | 普遍 |
标头 | storport.h (包括 Storport.h) |
IRQL | <= DISPATCH_LEVEL |