Compartilhar via


Funções de gerenciamento da memória

Este documento descreve as funções de gerenciamento de memória que o tempo de execução de simultaneidade fornece para ajudá-lo a alocar e liberar a memória de uma maneira simultâneo.

Dica

O tempo de execução de simultaneidade fornece um agendador padrão, e em virtude disso não é necessário criar um relatório em seu aplicativo.Como o agendador de tarefas o ajuda a ajustar o desempenho dos aplicativos, recomendamos que você comece com Biblioteca de padrões paralelos (PPL) ou Biblioteca de Agentes Assíncronos se você é novato em tempo de execução de simultaneidade.

O tempo de execução de simultaneidade fornece duas funções de gerenciamento de memória que são otimizadas e atribuindo liberando bloqueios de memória de uma maneira simultâneo. A função de concurrency::Alloc atribui um bloco de memória usando o tamanho especificado. A função de concurrency::Free libera memória que foi atribuída por Alloc.

Dica

As funções de Alloc e de Free dependem de se.Use a função de Free para liberar somente a memória que você atribui usando a função de Alloc .Além disso, quando você usa a função de Alloc para alocar memória, use somente a função de Free para liberar a memória.

Use as funções de Alloc e de Free quando você atribui e libera um conjunto fixo de tamanhos de alocação de threads ou das tarefas diferentes. A memória de caches de tempo de execução de simultaneidade que atribui de heap de tempo de execução C. O tempo de execução de simultaneidade mantém um cachê de memória separado para cada thread em execução; consequentemente, o tempo de execução gerencia a memória sem o uso de bloqueios ou de barreiras de memória. Um aplicativo mais beneficia das funções de Alloc e de Free quando o cachê de memória é acessado com mais frequência. Por exemplo, um thread que chama com frequência Alloc e Free beneficie mais do que um thread que chama primeiro Alloc ou Free.

Dica

Quando você usa estas funções de gerenciamento de memória, e os lotes de aplicativo usa de memória, o aplicativo pode inserir uma condição de memória baixa antes de você espera.Como os blocos de memória que são armazenados em cachê por um thread não estão disponíveis para qualquer outro thread, se um thread contém muitos memória, que a memória não está disponível.

Exemplo

Para obter um exemplo que usa as funções de Alloc e de Free para melhorar o desempenho de memória, consulte Como usar Alloc e Free para melhorar o desempenho da memória.

Consulte também

Tarefas

Como usar Alloc e Free para melhorar o desempenho da memória

Conceitos

Agendador de tarefas (Tempo de Execução de Simultaneidade)