Receber por email
← Voltar para o catálogo

memory-leak-detector

Detectar vazamentos de memória em aplicações desktop através de análise de heap e rastreamento de objetos.

1.4kestrelas
Atualizado há 4 meses

Ver no GitHub ↗ Licença: MIT

Como adicionar

/plugin marketplace add a5c-ai/babysitter

O comando exato pode variar conforme o repositório. Confira o README no GitHub.

Para o autor da skill

Cole no README do seu repo

Mostra que sua skill está catalogada na Skillteca, gera backlink e tráfego rastreável.

[![Skillteca](https://www.skillteca.com.br/api/badge/memory-leak-detector/svg)](https://www.skillteca.com.br/skills/memory-leak-detector)

Skills relacionadas

Ver todas de Automação →

Alerta por categoria

Receba novas skills de Automação toda segunda

1 email curto, só com as skills novas de Automação. 4 minutos de leitura, sem spam, cancela com 1 clique.

Você confirma o email no primeiro envio. Sem spam. Cancela com 1 clique.

Ler descrição completa

memory-leak-detector

Detect memory leaks in desktop applications through heap snapshot analysis, object tracking, and growth pattern detection.

Capabilities

  • Capture and compare heap snapshots
  • Track object allocation growth
  • Identify retained objects
  • Detect common leak patterns
  • Generate leak reports
  • Suggest fixes

Input Schema

{
  "type": "object",
  "properties": {
    "projectPath": { "type": "string" },
    "framework": { "enum": ["electron", "native", "qt"] },
    "duration": { "type": "number", "default": 60 }
  },
  "required": ["projectPath"]
}

Detection Approach

// Heap snapshot comparison
const v8 = require('v8');

function detectLeaks(iterations = 3, intervalMs = 10000) {
  const snapshots = [];

  const interval = setInterval(() => {
    global.gc(); // Requires --expose-gc
    const snapshot = v8.getHeapStatistics();
    snapshots.push(snapshot);

    if (snapshots.length >= iterations) {
      clearInterval(interval);
      analyzeGrowth(snapshots);
    }
  }, intervalMs);
}

function analyzeGrowth(snapshots) {
  const growth = snapshots[snapshots.length - 1].used_heap_size -
                 snapshots[0].used_heap_size;
  console.log(`Heap growth: ${growth / 1024 / 1024} MB`);
}

Common Leak Patterns

  1. Event listeners not removed
  2. Closures holding references
  3. Global variable accumulation
  4. Timer/interval not cleared
  5. DOM node detachment

Related Skills

  • electron-memory-profiler
  • startup-time-profiler
Compartilhar X LinkedIn