Freigeben über


RtlInsertAsLeftChild-Funktion (ntddk.h)

Die RtlInsertAsLeftChild Routine fügt einen Wiedergabelinkknoten als das linke untergeordnete Element des angegebenen Knotens in die Struktur ein.

Syntax

void RtlInsertAsLeftChild(
  [in] PRTL_SPLAY_LINKS ParentLinks,
  [in] PRTL_SPLAY_LINKS ChildLinks
);

Parameter

[in] ParentLinks

Zeigen Sie auf den Knoten in der Struktur, an der ChildLinks- als das linke untergeordnete Element eingefügt werden soll.

[in] ChildLinks

Zeigen Sie auf den Wiedergabelinkknoten, der in die Struktur eingefügt werden soll. Der Knoten muss durch Aufrufen von RtlInitializeSplayLinksinitialisiert worden sein.

Rückgabewert

Nichts

Bemerkungen

Anrufer von RtlInsertAsLeftChild müssen die folgenden Kriterien erfüllen:

  • Der Knoten bei ParentLinks darf kein untergeordnetes Element aufweisen.

    Ein Anrufer kann bestimmen, ob der Knoten bereits über ein linkes untergeordnetes Element verfügt, indem RtlLeftChildaufgerufen wird. Wenn RtlLeftChildNULL-zurückgibt, ist ParentLinks ein gültiger Parameter für RtlInsertAsLeftChild.

  • Der Knoten bei ChildLinks- darf kein übergeordnetes Element haben.

    Ein Aufrufer kann ermitteln, ob dieser Knoten bereits über ein übergeordnetes Element verfügt, indem RtlIsRoot- oder RtlParent-aufgerufen wird. Wenn RtlIsRoot-TRUE zurückgibt, wenn ChildLinksaufgerufen wird, ist ChildLinks ein gültiger Parameter für RtlInsertAsLeftChild. Wenn RtlParent einen entsprechenden Zeiger auf ChildLinkszurückgibt, ist ChildLinks ein gültiger Parameter für RtlInsertAsLeftChild.

Anrufer der Rtl- Wiedergabelinkroutinen sind für die Synchronisierung des Zugriffs auf die Wiedergabelinkstruktur verantwortlich. Ein schneller Mutex ist der effizienteste Synchronisierungsmechanismus, der für diesen Zweck verwendet werden kann.

Anrufer von RtlInsertAsLeftChild müssen bei IRQL-<= DISPATCH_LEVEL ausgeführt werden, wenn die Verknüpfungsstruktur für die Wiedergabe und ChildLinks Knoten nicht seitenlos sind. In der Regel werden Aufrufer bei IRQL-PASSIVE_LEVEL ausgeführt.

Anforderungen

Anforderung Wert
Zielplattform- Desktop
Header- ntddk.h (enthalten Ntddk.h, Ntifs.h)
IRQL- Siehe Abschnitt "Hinweise".

Siehe auch

RtlInitializeSplayLinks

RtlInsertAsRightChild

RtlIsRoot-

RtlLeftChild

RtlParent

RtlSplay-