Fuite de mémoire

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher

En informatique, une fuite de mémoire est une occupation croissante et non contrôlée ou non désirée de la mémoire d'un ordinateur.

Dans un programme qui alloue régulièrement de nouveaux objets en mémoire, la cause la plus classique d'un tel bug est l'absence de désallocation (de libération) de l'espace utilisé lorsque ces objets ne sont plus référencés.

La conséquence d'une fuite de mémoire est la saturation de la mémoire de la machine. Si la machine dispose d'un système d'exploitation évolué, ce dernier mettra un terme à l'exécution du logiciel lorsque la mémoire disponible sera pleine. Dans le cas contraire, le logiciel s'interrompra de façon anormale et inattendue sans indiquer les causes de son mauvais fonctionnement. Des langages de haut niveau permettent de réduire le risque de fuite de mémoire grâce à la présence d'un ramasse-miettes.

Une fuite de mémoire est un problème exclusivement logiciel. Il est totalement indépendant du bon ou du mauvais fonctionnement des composantes de la mémoire.

Il existe de nombreux outils pour détecter ce type d'erreur :

Exemple concret[modifier | modifier le code]

Avec Windows 7 ou 8, dans l'explorateur de fichier d'un dossier contenant des vidéos, lorsque l'affichage nécessite la présentation de miniatures, le processus « dllhost (COM Surogate) » démarre, normalement. Toutefois, il occupe le CPU à 25 % et progressivement utilise toute la mémoire du PC sans jamais terminer, et qui finit par tout bloquer[2].

La seule solution simple et facile, mais moins agréable, est de ne jamais afficher les miniatures dans l'affichage des dossiers, suite à une mauvaise gestion de la mémoire par le système win, toujours présente d'une version de win 7 à la suivante 8, dès que vous avez des fichiers images ou vidéos du web et TV, avec des codecs usuels.

Notes et références[modifier | modifier le code]

  1. http://answers.microsoft.com/fr-fr/windows/forum/windows_7-performance/fuite-de-m%C3%A9moire-dans-dllhost/e831a896-1818-4175-a946-878b8bc3152e.
  2. http://answers.microsoft.com/fr-fr/windows/forum/windows_7-performance/fuite-de-m%C3%A9moire-dans-dllhost/e831a896-1818-4175-a946-878b8bc3152e
    http://social.technet.microsoft.com/Forums/windows/en-US/6ae327ed-49d0-44ad-9009-c7df0ddcb590/thumbnail-memory-leak?forum=w7itproperf
    http://www.stereoforum.org/viewtopic.php?f=37&t=5863&p=54155&hilit=Miniaturansicht#p54155
    https://code.google.com/p/thumbnailator/issues/detail?id=44
    http://forum.xda-developers.com/xperia-l/general/how-to-solve-memory-leak-problem-xperia-t2488573.

Voir aussi[modifier | modifier le code]

Article connexe[modifier | modifier le code]

Lien externe[modifier | modifier le code]