Compartilhar via


RTL_SPLAY_LINKS estrutura (ntddk.h)

A estrutura RTL_SPLAY_LINKS é uma estrutura opaca e é usada pelo sistema para representar um nó de árvore de link de reprodução.

Sintaxe

typedef struct _RTL_SPLAY_LINKS {
  struct _RTL_SPLAY_LINKS *Parent;
  struct _RTL_SPLAY_LINKS *LeftChild;
  struct _RTL_SPLAY_LINKS *RightChild;
} RTL_SPLAY_LINKS;

Membros

Parent

Um ponteiro opaco para o nó pai para este nó. Se houver apenas um nó na árvore de link do splay, o valor desse membro será nulo.

LeftChild

Um ponteiro opaco para o nó filho esquerdo para este nó. Se nenhum nó filho esquerdo existir, o valor desse membro será NULL.

RightChild

Um ponteiro opaco para o nó filho direito para este nó. Se nenhum nó filho direito existir, o valor desse membro será NULL.

Observações

Normalmente, cada nó de uma árvore de link de splay consiste em uma estrutura definida pelo usuário. Cada nó definido pelo usuário deve conter uma estrutura de RTL_SPLAY_LINKS inicializada. Para inicializar uma estrutura de RTL_SPLAY_LINKS, chame a macro rtlInitializeSplayLinks. (Passe o endereço do membro RTL_SPLAY_LINKS contido na estrutura definida pelo usuário.)

Para uma árvore de link de reprodução com um ou mais nós, um novo nó geralmente é inicializado da seguinte maneira:

  1. Use rtlLeftChild e/ou rtlRightChild para localizar o ponto de inserção para o novo nó. Ou seja, obtenha o endereço correto do nó pai do novo nó. (O novo nó será anexado à esquerda do nó pai ou à direita.)
  2. Use RtlInitializeSplayLinks para inicializar o novo nó com o endereço do nó pai encontrado na etapa anterior.
  3. Insira o novo nó na árvore de reprodução usando RtlInsertAsLeftChild ou RtlInsertAsRightChild, conforme apropriado.
  4. Chame rtlSplay com o endereço do novo nó. (O novo nó se torna a raiz da árvore de reprodução.)
Os chamadores do Rtlxxx rotinas de árvore de reprodução são responsáveis por sincronizar o acesso à árvore de reprodução. Para obter mais informações sobre como sincronizar o acesso à árvore de reprodução, consulte bloqueios, deadlocks e de sincronização e gerenciamento de prioridades de hardware.

Requisitos

Requisito Valor
de cliente com suporte mínimo Disponível em todas as versões com suporte do Windows.
cabeçalho ntddk.h (incluem Fltkernel.h, Ntifs.h, Ntddk.h)

Consulte também

rtlInitializeSplayLinks

rtlInsertAsLeftChild

rtlInsertAsRightChild

rtlLeftChild

rtlRightChild

rtlSplay