LocalDataStoreSlot Classe

Definição

Encapsula um slot de memória para armazenar dados locais. Essa classe não pode ser herdada.

public ref class LocalDataStoreSlot sealed
public sealed class LocalDataStoreSlot
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class LocalDataStoreSlot
type LocalDataStoreSlot = class
[<System.Runtime.InteropServices.ComVisible(true)>]
type LocalDataStoreSlot = class
Public NotInheritable Class LocalDataStoreSlot
Herança
LocalDataStoreSlot
Atributos

Comentários

O .NET Framework fornece dois mecanismos para usar o TLS (armazenamento local de thread): campos estáticos relativos a thread e slots de dados.

  • Campos estáticos relativos a thread são campos static (campos Shared em Visual Basic) marcados com o atributo ThreadStaticAttribute. Eles fornecem melhor desempenho do que os slots de dados e permitem a verificação de tipo de tempo de compilação.

  • Os slots de dados são mais lentos e mais estranhos de usar do que os campos estáticos relativos ao thread. Além disso, os dados são armazenados como tipo Object, portanto, você deve convertê-los no tipo correto antes de usá-los. No entanto, você pode usar slots de dados quando não tiver informações suficientes no tempo de compilação para alocar campos estáticos.

Para obter mais informações sobre como usar o TLS, consulte o Armazenamento Local do Thread: Thread-Relative Campos Estáticos e Slots de Dados.

Da mesma forma, o .NET Framework fornece dois mecanismos para usar o armazenamento local de contexto: campos estáticos relativos ao contexto e slots de dados. Campos estáticos relativos ao contexto são campos estáticos marcados com o ContextStaticAttribute atributo. As compensações entre o uso desses dois mecanismos são semelhantes às compensações entre o uso de campos estáticos relativos a threads e slots de dados.

A LocalDataStoreSlot estrutura serve como um mecanismo de memória do repositório local que threads e contextos podem usar para armazenar dados específicos do thread e específicos do contexto, respectivamente. O common language runtime aloca uma matriz de armazenamento de dados de vários slots para cada processo quando ele é criado. O thread ou contexto chama várias funções para alocar um slot de dados no armazenamento de dados, armazenar e recuperar um valor de dados no slot e liberar um slot de dados para reutilização após a expiração do thread ou objeto de contexto.

Os slots de dados são exclusivos por thread ou contexto; seus valores não são compartilhados entre os objetos de thread ou de contexto. Os slots de dados podem ser alocados por um nome ou por um número de índice.

Para obter mais informações sobre como armazenar dados locais, consulte Thread ou Context. A LocalDataStoreSlot classe é usada com métodos como Thread.AllocateNamedDataSlot, Context.AllocateNamedDataSlote Thread.GetDataContext.GetData; não tem métodos próprios que você precisa usar.

Métodos

Nome Description
Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
Finalize()

Garante que os recursos sejam liberados e outras operações de limpeza sejam executadas quando o coletor de lixo recuperar o LocalDataStoreSlot objeto.

GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Objectatual.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Aplica-se a

Confira também