J'ai un processus qui fonctionne en Solaris
en continu. L'utilisation de mémoire de tas du processus ne cesse d'augmenter au fil du temps et lorsqu'elle dépasse 4 Go, traite les vidages de mémoire.Analyse de mémoire de tas
J'ai essayé d'exécuter le processus avec Purify
, mais je n'ai trouvé aucun code qui faille vraiment la mémoire.
Existe-t-il un moyen d'analyser quel code est responsable de l'utilisation accrue de la mémoire de tas? L'utilisation de mémoire de tas du processus augmente de 4 Mo ou 8 Mo toutes les 15 minutes et il ne diminue jamais.
J'ai utilisé la commande pmap
pour vérifier l'utilisation de la mémoire de tas de processus.
Il se peut que vous ne fassiez pas de mémoire, mais que vous gardiez un pointeur, quelque part. Purify pensera alors que c'est ok. –
@BoPersson Parlez-vous des pointeurs pendants? – cppcoder
Non, ils ne pendent pas si vous oubliez de supprimer certains d'entre eux. Comme construire une longue liste, et ajouter des choses mais certaines ne sont jamais supprimées. –