Compartilhar via


PreallocatedWorkItem Classe

Definição

Um item de trabalho pré-alocado é construído antes de seu envio ao pool de threads, garantindo que o item de trabalho seja construído para que possa ser enviado ao pool de threads quando necessário. Por exemplo, um PreallocatedWorkItem pode ser criado caso seja necessário para uma rotina de desalocação de recursos, pois a rotina de desalocação de recursos pode ser chamada em circunstâncias em que não há recursos suficientes disponíveis para criar o item de trabalho.

Observação

Há suporte para a API do ThreadPool para desktop, bem como para aplicativos UWP.

public ref class PreallocatedWorkItem sealed
/// [Windows.Foundation.Metadata.Activatable(Windows.System.Threading.Core.IPreallocatedWorkItemFactory, 65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class PreallocatedWorkItem final
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(Windows.System.Threading.Core.IPreallocatedWorkItemFactory, 65536, "Windows.Foundation.UniversalApiContract")]
class PreallocatedWorkItem final
[Windows.Foundation.Metadata.Activatable(typeof(Windows.System.Threading.Core.IPreallocatedWorkItemFactory), 65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class PreallocatedWorkItem
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(typeof(Windows.System.Threading.Core.IPreallocatedWorkItemFactory), 65536, "Windows.Foundation.UniversalApiContract")]
public sealed class PreallocatedWorkItem
Public NotInheritable Class PreallocatedWorkItem
Herança
Object Platform::Object IInspectable PreallocatedWorkItem
Atributos

Requisitos do Windows

Família de dispositivos
Windows 10 (introduzida na 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduzida na v1.0)

Construtores

PreallocatedWorkItem(WorkItemHandler)

Inicializa um novo item de trabalho com um delegado WorkItemHandler , alocando recursos para o item de trabalho com antecedência.

PreallocatedWorkItem(WorkItemHandler, WorkItemPriority)

Inicializa um novo item de trabalho com um delegado WorkItemHandler , alocando recursos para o item de trabalho com antecedência e especifica a prioridade do item de trabalho em relação a outros itens de trabalho no pool de threads.

PreallocatedWorkItem(WorkItemHandler, WorkItemPriority, WorkItemOptions)

Inicializa um novo item de trabalho com um delegado WorkItemHandler , alocando recursos para o item de trabalho com antecedência e especifica a prioridade do item de trabalho em relação a outros itens de trabalho no pool de threads. Também especifica como o pool de threads alocará o tempo do processador para o item de trabalho.

Métodos

RunAsync()

Envia o item de trabalho pré-alocado para o pool de threads, sem a necessidade de alocar recursos adicionais.

Aplica-se a