Comment puis-je déterminer la quantité de mémoire consommée par un domaine d’application .Net ?

StackOverflow https://stackoverflow.com/questions/26074

  •  09-06-2019
  •  | 
  •  

Question

J'essaie de restreindre par programme la consommation de mémoire des plugins exécutés dans un AppDomain .Net, mais je ne trouve aucun paramètre de configuration pour cela, et je ne trouve pas non plus de moyen d'interroger un AppDomain pour déterminer la quantité de mémoire qu'il consomme .Des idées?

Était-ce utile?

La solution

Voici la documentation pour interroger l'utilisation de la mémoire d'un processus.Ce n’est pas la même chose que AppDomain, mais cela pourrait être un point de départ.

http://msdn.microsoft.com/en-us/library/s80a75e5(VS.80).aspx

Vous pouvez également demander au GC ce qui, selon lui, est actuellement alloué.

http://msdn.microsoft.com/en-us/library/system.gc.gettotalmemory(VS.71).aspx

Autres conseils

Vieille question, mais en attendant (depuis .Net framework 4.0) une nouvelle solution est disponible.Vous devrez activer ARM (Application Domain Resource Monitoring).À partir de ce moment, vous pouvez demander des informations sur le temps processeur total consommé, l'utilisation de la mémoire, etc.

Voir la documentation Microsoft ici

Je ne suis pas sûr par programmation, mais Explorateur de processus peut vous indiquer la quantité de mémoire utilisée par un AppDomain .net.Peut-être qu'ils ont de la documentation sur la façon dont ils interrogent ces informations.

Utilisation de l'interopérabilité mscoree.CorRuntimeHostClass à partir de C:\WINDOWS\Microsoft.NET\Framework\vXXXXXX\mscoree.tlb

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top