Ir para o conteúdo principal
Correção de Vazamento de Memória

Pare o vazamento de memória do Monosnap — mude em 60 segundos

O vazamento tem sido documentado por anos. Ele não será corrigido. O Maxisnap usa ~50 MB em modo inativo e permanece estável o dia todo. Mesmo atalho Ctrl+Alt+5, sem necessidade de reaprender.

Jornada de trabalho de 8 horas, RAM em MB
Monosnap, hora 0180
Monosnap, hora 2295
Monosnap, hora 4452
Monosnap, hora 8812
Maxisnap, a qualquer hora51

O vazamento não é do seu computador

Se você tem se perguntado se é a sua máquina — um driver antigo, peculiaridades do Windows 11, uma aba do Chrome descontrolada — não é. O vazamento está dentro do Monosnap e tem estado lá por anos. Pesquise r/monosnap e você encontrará tópico após tópico descrevendo o mesmo padrão.

Aqui está o que acontece nos bastidores. Cada vez que o Monosnap captura uma região, ele aloca um frame buffer grande o suficiente para armazenar os dados brutos de pixels. Para uma tela de 2560 x 1440, isso é aproximadamente 14 MB. Quando o editor fecha, esses buffers deveriam ser liberados de volta para o SO. No Monosnap, muitas vezes não são — eles são retidos pelo heap do renderizador Electron, esperando por uma passagem de coleta de lixo que nunca é executada ou é executada tarde demais. Ao longo de um dia de trabalho com mais de 40 capturas, os buffers retidos se acumulam em centenas de megabytes de RAM fantasma.

A solução é um aplicativo diferente

A arquitetura do Monosnap vincula o vazamento ao próprio Electron, e corrigi-lo exigiria reescrever o pipeline de captura. Essa reescrita não aconteceu em cinco anos. A solução prática é uma ferramenta que foi projetada sem o problema em primeiro lugar.

Maxisnap é construído em PyQt6 e compilado com PyInstaller em um único executável Win32. Não há processo Chromium. Cada captura aloca um QImage, o editor o referencia, e quando a janela fecha, a referência é descartada e a memória retorna ao SO imediatamente — porque o modelo de propriedade do PyQt e a contagem de referências do Python liberam ansiosamente, em vez de esperar por um GC geracional.

Empiricamente: Maxisnap ocioso no lançamento está em torno de 50 MB. Após 72 horas de funcionamento contínuo com capturas regulares, ainda está em torno de 50 MB. O gráfico acima é de logs reais.

Em menos de 60 segundos

Procedimento de troca

  1. 0:00
    Baixe o Maxisnap. Vá para a página de download. Um clique, 63 MB.
  2. 0:15
    Sair do Monosnap. Clique com o botão direito no ícone da bandeja, escolha Sair. Veja sua RAM cair 600 MB.
  3. 0:30
    Execute o instalador. Caminho de instalação padrão, sem necessidade de reiniciar.
  4. 0:45
    Pressione Ctrl+Alt+5. Sua primeira captura com a mesma hotkey que você sempre usou. O editor abre instantaneamente.
  5. 0:60
    Pronto. Cole suas credenciais SFTP/S3 em Configurações se quiser upload para o servidor.
FAQ

Perguntas sobre vazamento de memória

Eu tiro apenas 5 screenshots por dia. O vazamento ainda me afeta?

Menos severamente, mas sim. A memória ociosa ainda cresce porque o Monosnap consulta a área de transferência e a bandeja do sistema mesmo quando você não está capturando. O crescimento é mais lento com baixo uso, mas nunca para.

Reiniciar o aplicativo ajuda?

Temporariamente. Saia e reinicie e você estará de volta a ~180 MB. Mas a maioria dos usuários que notam o vazamento chegou a essa situação porque mantêm sua ferramenta de screenshot funcionando o dia todo, e reiniciá-la várias vezes é o oposto do que eles querem.

E quanto ao Monosnap no macOS?

O vazamento é menos severo no macOS porque o modelo de memória difere, mas os usuários ainda relatam crescimento gradual. A versão do Maxisnap para macOS é experimental. Para Windows, mude hoje.

Sua RAM agradecerá

Maxisnap é gratuito. Leva 60 segundos para instalar. As mesmas hotkeys que você já usa.

Baixar Maxisnap

Relacionado: por que ele ficou lento · correção de congelamento · alternativa geral