Přejít na hlavní obsah
Oprava úniku paměti

Zastavte únik paměti Monosnapu — přepněte za 60 sekund

Únik je dokumentován roky. Nebude opraven. Maxisnap používá ~50 MB v nečinnosti a zůstává stabilní po celý den. Stejná klávesová zkratka Ctrl+Alt+5, žádné přeškolování.

8hodinový pracovní den, RAM v MB
Monosnap, hodina 0180
Monosnap, hodina 2295
Monosnap, hodina 4452
Monosnap, hodina 8812
Maxisnap, kdykoli51

Únik není ve vašem počítači

Pokud jste si říkali, jestli to není váš počítač — starý ovladač, zvláštnosti Windows 11, nekontrolovatelná záložka Chrome — není. Únik je uvnitř Monosnap a trvá to roky. Hledejte r/monosnap a najdete vlákno za vláknem popisující stejný vzorec.

Zde je, co se děje pod kapotou. Pokaždé, když Monosnap zachytí oblast, alokuje vyrovnávací paměť (frame buffer) dostatečně velkou pro uložení nezpracovaných pixelových dat. Pro obrazovku 2560 x 1440 je to zhruba 14 MB. Když se editor zavře, tyto buffery by měly být uvolněny zpět do OS. V Monosnap se tak často neděje — jsou zadržovány haldou renderovacího procesu Electronu a čekají na průchod garbage collection, který buď nikdy nenastane, nebo nastane příliš pozdě. Během pracovního dne s 40+ zachyceními se zadržené buffery nahromadí do stovek megabajtů fantomové RAM.

Řešením je jiná aplikace

Architektura Monosnap váže únik k samotnému Electronu a oprava by vyžadovala přepsání celého procesu zachycování. K tomuto přepisu nedošlo za pět let. Praktickým řešením je nástroj, který byl od počátku navržen bez tohoto problému.

Maxisnap je postaven na PyQt6 a zkompilován pomocí PyInstaller do jediného spustitelného souboru Win32. Neexistuje žádný proces Chromium. Každé zachycení alokuje QImage, editor na něj odkazuje, a když se okno zavře, odkaz je zrušen a paměť se okamžitě vrátí do OS — protože model vlastnictví PyQt a počítání referencí Pythonu uvolňují paměť okamžitě, namísto čekání na generační GC.

Empiricky: Maxisnap v klidu při spuštění zabírá kolem 50 MB. Po 72 hodinách nepřetržitého běhu s pravidelnými zachyceními je stále kolem 50 MB. Graf výše pochází ze skutečných logů.

Pod 60 sekund

Postup přepnutí

  1. 0:00
    Stáhněte si Maxisnap. Přejděte na stránku ke stažení. Jedno kliknutí, 63 MB.
  2. 0:15
    Ukončete Monosnap. Klikněte pravým tlačítkem na ikonu v oznamovací oblasti, zvolte Ukončit. Sledujte, jak vaše RAM klesne o 600 MB.
  3. 0:30
    Spusťte instalátor. Výchozí instalační cesta, není nutný restart.
  4. 0:45
    Stiskněte Ctrl+Alt+5. Vaše první zachycení se stejnou klávesovou zkratkou, jakou jste vždy používali. Editor se otevře okamžitě.
  5. 0:60
    Hotovo. Vložte své SFTP/S3 přihlašovací údaje do Nastavení, pokud chcete nahrávat na server.
FAQ

Otázky k úniku paměti

Pořizuji jen 5 snímků obrazovky denně. Ovlivňuje mě únik paměti stále?

Méně závažně, ale ano. Paměť v klidu stále roste, protože Monosnap kontroluje schránku a oznamovací oblast systému, i když nic nezachycujete. Růst je při nízkém využití pomalejší, ale nikdy se nezastaví.

Pomůže restartování aplikace?

Dočasně. Ukončete a znovu spusťte a vrátíte se na ~180 MB. Většina uživatelů, kteří si úniku všimnou, se k tomu dostala, protože nechávají svůj nástroj na snímky obrazovky běžet celý den, a opakované restartování je opakem toho, co chtějí.

Co Monosnap na macOS?

Únik je na macOS méně závažný, protože se liší paměťový model, ale uživatelé stále hlásí postupný růst. Sestavení Maxisnap pro macOS je experimentální. Pro Windows přejděte dnes.

Vaše RAM vám poděkuje

Maxisnap je zdarma. Instalace trvá 60 sekund. Stejné klávesové zkratky, jaké již používáte.

Stáhnout Maxisnap

Související: proč se zpomalil · oprava zamrzání · obecná alternativa