Macro NdisInterlockedPushEntrySList (ndis.h)
A função NdisInterlockedPushEntrySList insere uma entrada no cabeçalho de uma lista sequenciada e vinculada.
Sintaxe
void NdisInterlockedPushEntrySList(
SListHead,
SListEntry,
[in] Lock
);
Parâmetros
SListHead
Um ponteiro para o cabeçalho da lista já inicializada, vinculada à qual a entrada especificada deve ser inserida.
SListEntry
Um ponteiro para a entrada a ser inserida.
[in] Lock
Um ponteiro para um bloqueio de rotação fornecido pelo chamador, não atualmente mantido pelo chamador.
Valor de retorno
Nenhum
Observações
Antes da chamada inicial do driver, a função NdisInterlockedPushEntrySList, ela deve inicializar o cabeçalho da lista com o função NdisInitializeSListHead.
Um de driver não deve estar segurando o de bloqueio de determinado quando chama NdisInterlockedPushEntrySList . Se necessário, um driver deve chamar a função NdisReleaseSpinLock antes de chamar NdisInterlockedPushEntrySList. NdisInterlockedPushEntrySList deve adquirir esse bloqueio antes de inserir ListEntry à frente da lista para garantir que essa operação seja tratada de maneira segura para vários processadores.
O chamador deve fornecer armazenamento de residente para o de bloqueio, que deve ser inicializado com a função NdisAllocateSpinLock antes da chamada inicial para qualquer NdisInterlocked.. Rotina de SList.
Os drivers que repitam as operações de E/S devem usar uma fila intertravada vinculada duplamente e o NdisInterlockedInsert/Remove.. Listar funções, em vez de uma Lista S.
Se NdisInterlockedPushEntrySList for chamado em IRQL >= DISPATCH_LEVEL, o armazenamento do parâmetro ListHead e as entradas da lista deverão ser residentes
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Com suporte para drivers NDIS 6.0 e NDIS 5.1 (consulte NdisInterlockedPushEntrySList (NDIS 5.1)) no Windows Vista. Com suporte para drivers NDIS 5.1 (consulte NdisInterlockedPushEntrySList (NDIS 5.1)) no Windows XP. |
da Plataforma de Destino | Área de trabalho |
cabeçalho | ndis.h (inclua Ndis.h) |
IRQL | Qualquer nível |