Dela via


Pausa en adapter

NDIS anropar en miniportdrivrutins MiniportPause funktion för att initiera en pausåtgärd. Adaptern förblir i paustillståndet tills pausåtgärden är klar.

I pausläget måste miniportdrivrutinen slutföra pågående mottagningsåtgärder. Drivrutinen måste också slutföra alla utestående sändningsåtgärder och den bör avvisa alla nya sändningsbegäranden.

För att slutföra mottagningsåtgärder väntar drivrutinen på att alla anrop till funktionen NdisMIndicateReceiveNetBufferLists ska återvända, och NDIS måste returnera alla oanvända NET_BUFFER_LIST strukturer till miniportdrivrutinens MiniportReturnNetBufferLists funktion.

För att slutföra utestående sändningsåtgärder bör miniportdrivrutinen anropa funktionen NdisMSendNetBufferListsComplete för alla utestående NET_BUFFER_LIST strukturer. Drivrutinen bör avvisa alla nya begäranden som skickas till dess MiniportSendNetBufferLists funktion omedelbart.

När en miniportdrivrutin har slutfört alla utestående sändnings- och mottagningsåtgärder måste drivrutinen slutföra pausbegäran synkront eller asynkront. Om pausåtgärden slutförs asynkront anropar drivrutinen NdisMPauseComplete för att slutföra pausbegäran. När du har slutfört pausbegäran är miniportdrivrutinen i pausat tillstånd.

NDIS initierar inte andra Plug and Play-åtgärder, till exempel stoppa, initiera, strömändring eller omstartsåtgärder, medan miniportdrivrutinen är i paustillstånd. NDIS kan initiera dessa Plug and Play-åtgärder när en miniportdrivrutin är i pausat tillstånd.