Il n'y a jamais beaucoup de RAM: tout montant disponible ne suffit que "pour le moment", et il y a où l'appliquer. Eh bien, quand ce sont des tâches vraiment utiles. Le travail. Jeux Recherche. C'est mauvais quand la RAM se termine non pas par la faute de l'utilisateur, mais par la bizarrerie du développeur.

Il y a plusieurs raisons à cela, mais il existe des moyens de le résoudre ... parlons de tout dans l'ordre.
Ramenez mon 97e
La saisie illégale de RAM par des applications est une conséquence directe du progrès technologique. Grâce à la loi de Moore, il y a plus de ressources informatiques (et leur prix baisse d'année en année), et le coût du travail d'un spécialiste hautement qualifié, hélas (et encore une fois heureusement pour nous IT'shnikov), suit la tendance inverse. Les applications regorgent de nouvelles opportunités, pour le développement rapide des couches d'abstractions suivantes sont introduites ... Il y a vingt ans, le code était beaucoup plus proche du matériel qu'aujourd'hui. Un grand nombre de couches et de technologies intermédiaires est l'un des nombreux maux qui conduisent à une situation déplorable. 15 mégaoctets de RAM pour (!) La calculatrice. Un cauchemar!

Et ça va, la situation s’améliorerait, alors non: les développeurs prennent de vieux outils, en proposent de nouveaux encore plus simples et plus multifonctionnels, plusieurs années passent et le cycle se répète. Pensez-y, nous avons récemment apprécié CSS 3.0 et les coins arrondis avec une simple propriété d'un objet, puis Bootstrap, maintenant - un autre module complémentaire de combinaison. Écrivez moins, faites plus dans tous les domaines.
Trolleybus à pain confortables
Les navigateurs modernes ne sont pas seulement des hypertextes précieux, mais aussi trois ou quatre douzaines de fonctionnalités utiles. Lecture vidéo, travail avec des documents et autres extensions - presque ce système d'exploitation en miniature. Avec un tas de ses propres modules de différents développeurs, et tout cela est connecté en quelque sorte. Cela fonctionne souvent de la même manière. Un million d'onglets ouverts, une disposition complexe, un cadre sur le cadre sont quelques-uns des principaux générateurs de fuites.
Comment se battre? Pour mettre une sorte de bloqueur de publicité et d'extension comme The Great Suspender, qui décharge les pages inutilisées de la mémoire et les enregistre dans l'onglet «minimum» - il réduit de manière pratique et efficace la réflexion en arrière-plan de la mémoire.
Tous les blocs publicitaires ne sont pas également utiles
Oui, un logiciel qui supprime les bannières ennuyeuses et tout code de suivi, dans certains cas, réduit la charge sur le processeur et la RAM. Mais pas toujours. L'efficacité de cette solution dépend directement de la qualité de sa mise en œuvre. Un logiciel qui fonctionne au niveau du système en tant que serveur proxy (coupant le trafic des sites publicitaires avant qu'il n'atteigne le navigateur) consomme à lui seul une certaine quantité de mémoire, mais il est plus ou moins statique. Mais les extensions et modules pour les navigateurs populaires créent des conceptions monstrueuses à la place des cadres publicitaires coupés. Oui, il y a moins de publicité sur la page, mais seule la consommation de mémoire de cet onglet peut augmenter non pas de 10 à 15%, mais
plusieurs fois .
Problèmes de mise en cache des ressources
La plupart des jeux de bac à sable en souffrent, à la fois à l'arrêt et en cours d'exécution dans le navigateur: Factorio, Rim World, Minecraft avec un tas de mods ... Dans certaines circonstances (par exemple, vous avez quitté la production pour la nuit, afin que le jeu fonctionne pendant que vous dormiez), vous pouvez vous réveiller avec un ordinateur pendant. Eh bien, ou très lentement. De plus, en termes de RAM, tout sera «ok» - combien le jeu a consommé, tant il consomme.

Dans 90% des cas de ce comportement, les utilisateurs ont un SSD installé et le fichier d'échange et le mode d'hibernation sont activés. Le jeu supprime les ressources inutilisées de la RAM vers le swap, "Windows" les met en cache et les enregistre en cas de mise en veille, puis les graphiques sont réutilisés et remis dans la "boîte longue". Mais les anciennes copies ne sont supprimées nulle part - après quelques heures, selon le volume du lecteur, l'espace libre sur celui-ci s'épuise, le système se bloque avant de redémarrer et d'effacer les fichiers temporaires. N'essayez pas «d'optimiser» la consommation de mémoire du jeu en déchargeant et en re-pompant les ressources - cela se déroulerait comme d'habitude, avec un ralentissement progressif et un crash ultérieur.

Options de la solution: testez l'hypothèse de certains utilitaires tels que TreeSize, supprimez les déchets accumulés, transférez le swap vers un grand disque dur ou désactivez l'hibernation dans Windows 10, rédigez un rapport de bogue sur le forum, attendez le correctif.
Les pattes de développeur
Parfois, les fuites ne sont que des fuites. Photoshop aime et sait manger de grandes quantités de mémoire, en particulier immédiatement après la sortie d'une nouvelle version numérotée. Heureusement, l'application elle-même dispose d'un outil pour limiter la quantité de RAM disponible (ne pas allouer plus de 66%), affecter des disques de mise en cache et tout ça. Alternativement, vous pouvez attendre six mois et attendre la version stable. Les Killerfiches sont rarement assez nécessaires pour supporter les bugs.

Clients torrent. Beaucoup de connexions établies simultanément, le même nombre de fichiers téléchargés simultanément, des problèmes de connexion - et la consommation de mémoire correspondante. La solution est de limiter le nombre de connexions sortantes et le taux de retour. Les cotes correctes sont sélectionnées manuellement.
Logiciel pour imprimantes / scanners / appareils photo. Dans l'anamnèse - un code hindou écrit pour la nourriture: une courbe, comme un Kama Sutra. La médecine dans ce cas est impuissante - ici, c'est parce que d'utiliser des analogues ouverts / universels, ou d'écrire des rapports de bugs et de prier Shiva pour qu'il punisse les maudits hacks.

Miner minar. Parfois, une fuite de mémoire «nulle part» est une excuse pour découvrir un antivirus. La principale protection des crypto-monnaies contre «l'optimisation» de leur production par la méthode matérielle est une augmentation de la complexité de l'algorithme dans le sens «davantage de mémoire est nécessaire pour les calculs». Par conséquent, les minilinks d'arrière-plan peuvent brûler sur la consommation de RAM. De plus, vous pouvez rejoindre le nombre de "mineurs" sans être conscient de vous: quel est le seul scandale connu avec
uTorrent , le "bonus" auquel les utilisateurs ont reçu l'application minière Epic Scale. Oui, et un
tracker populaire l'automne dernier s'est allumé dans l'exploration en arrière-plan de la crypto-monnaie directement dans les navigateurs des visiteurs.
Guerre sans fin
Il faudra beaucoup de temps avant qu'une IA de haute qualité ne soit écrite qui puisse éliminer les décombres d'un code tordu. En attendant, vous devez gérer les fuites de mémoire en utilisant des méthodes éprouvées: avec un tambourin, un fouet et un rapport de bogue. Ou augmentez les volumes et ne remarquez pas ces mêmes fuites. Bien sûr, avoir 16, 32, ou même 64 gigaoctets de RAM rapide à bord est bon, et
Kingston trouvera toujours une solution appropriée . Il est important de se rappeler que n'importe quel volume n'est pas un obstacle aux logiciels tordus - juste avec une bonne quantité de RAM, il fonctionnera plus longtemps sans problème.
Existe-t-il des exemples intéressants de fuites de mémoire dans le système? Écrivez dans les commentaires - tout le monde sera intéressé.