Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die EvtPacketQueueStart Rückruffunktion ist ein optionaler Rückruf, der vom Clienttreiber implementiert wird, um den Datenpfad für eine Paketwarteschlange zu starten.
Syntax
EVT_PACKET_QUEUE_START EvtPacketQueueStart;
void EvtPacketQueueStart(
[_In_] NETPACKETQUEUE PacketQueue
)
{...}
Parameter
[_In_] PacketQueue
Ein Handle für eine Paketwarteschlange.
Rückgabewert
Nichts
Bemerkungen
Dies ist ein optionaler Rückruf. Registrieren Sie diese Rückruffunktion in Ihrer EVT_NET_ADAPTER_CREATE_TX(RX)QUEUE Rückruf. Legen Sie das entsprechende Element einer NET_PACKET_QUEUE_CONFIG-Struktur fest, nachdem Sie die Struktur mit NET_PACKET_QUEUE_CONFIG_INITinitialisiert haben, und rufen Sie dann NetTx(Rx)QueueCreateauf.
In diesem Rückruf konfiguriert ein Clienttreiber in der Regel Informationen, die seine Hardware für die Paketübertragung oder den Empfang benötigt. Da dieser Rückruf keinen Wert zurückgibt und daher nicht fehlschlagen sollte, sollten Clienttreiber Aktionen wie die Ressourcenzuordnung während der Warteschlangenerstellung ausführen. Daher sollte dieser Rückruf eine leichtgewichtige Funktion sein, die schnell ausgeführt wird.
Clienttreiber empfangen erst nach EvtPacketQueueStart Anrufe an EVT_PACKET_QUEUE_ADVANCE, EVT_PACKET_QUEUE_CANCELoder EVT_PACKET_QUEUE_SET_NOTIFICATION_ENABLED. Darüber hinaus wird EvtPacketQueueStart- im gleichen Ausführungskontext oder Thread aufgerufen, wie EvtPacketQueueAdvance, EvtPacketQueueCancelund EvtPacketQueueSetNotificationEnabled, sodass Clienttreiber nicht zwischen diesen Rückruffunktionen für eine einzelne Warteschlangeninstanz synchronisiert werden müssen.
Wenn eine Warteschlange gestartet wird, garantiert NetAdapterCx, dass BeginIndex == NextIndex == 0 für alle Ringpuffer dieser Warteschlange. Nach dem Start liest oder schreibt das Framework keine NextIndex- für Paketringpuffer, sodass Clienttreiber sie entweder nach Bedarf verwenden oder nicht verwenden möchten. BeginIndex- wird vom Framework gelesen, aber nicht außerhalb von EvtPacketQueueStartgeändert.
Weitere Informationen und ein Diagramm mit dem NetAdapterCx-Datenpfadabfragungsmodell finden Sie unter Übermittlungs- und Empfangswarteschlangen.
Anforderungen
| Anforderung | Wert |
|---|---|
| Zielplattform- | Universal |
| Minimale KMDF-Version | 1.27 |
| Mindest-UMDF-Version | 2.33 |
| Header- | netpacketqueue.h (include netadaptercx.h) |
| IRQL- | PASSIVE_LEVEL |
Siehe auch
EVT_NET_ADAPTER_CREATE_RXQUEUE
EVT_NET_ADAPTER_CREATE_TXQUEUE