Je lis artículo sur les pools d'objets. J'ai une politique de pool d'objets :
public class DictionaryPolicy<TKey, TValue> : PooledObjectPolicy<Dictionary<TKey, TValue>>
{
public override Dictionary<TKey, TValue> Create()
{
return new Dictionary<TKey, TValue>();
}
public override bool Return(Dictionary<TKey, TValue> obj)
{
obj.Clear();
return true;
}
}
Et maintenant, je dois l'enregistrer.
services.AddSingleton(provider =>
provider.GetRequiredService<ObjectPoolProvider>().Create(new DictionaryPolicy()));
Il y a une erreur de compilation parce que je dois définir des paramètres génériques pour DictionaryPolicy. Mais je ne veux pas enregistrer chaque dictionnaire avec le type spécifique que j'utilise. De plus, chaque pool d'un type de dictionnaire spécifique doit être enregistré en tant que singleton.