Exemplo de pooling em c# dotnet 4.6.1 #112
Replies: 2 comments
-
|
Nesse exemplo, um array de bytes é criado e um pool de arrays é obtido através do objeto ArrayPool. Em seguida, um array de 1024 bytes é alugado do pool utilizando o método Rent, e é usado para realizar uma operação qualquer. Por fim, o array é devolvido para o pool utilizando o método Return, para que possa ser reutilizado em outras partes do código. Lembre-se que, para obter um bom desempenho utilizando o pooling, é importante utilizar o mesmo pool em todo o código, para que os objetos possam ser reutilizados de forma eficiente. |
Beta Was this translation helpful? Give feedback.
-
|
pooling com o .NET 6 usando a nova API MemoryPool: using System;
using System.Buffers;
class Program
{
static void Main(string[] args)
{
// Criando um pool de bytes
var pool = MemoryPool<byte>.Shared;
// Alugando um Memory<T> a partir do pool
var rentedMemory = pool.Rent(1024);
// Obtendo o span de bytes a partir do Memory<T>
Span<byte> rentedSpan = rentedMemory.Span;
// Usando o span alugado
Console.WriteLine(rentedSpan.Length);
// Devolvendo o Memory<T> para o pool
rentedMemory.Dispose();
}
} |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
O pooling é uma técnica utilizada para reutilizar objetos em vez de criar novos, a fim de minimizar o impacto na coleta de lixo e no desempenho do aplicativo. No .NET Framework 4.6.1, o pooling pode ser implementado utilizando o objeto System.Buffers.ArrayPool.
Aqui está um exemplo simples de como utilizar o ArrayPool em C#:
Beta Was this translation helpful? Give feedback.
All reactions