Diagnoza wydajności

Dlaczego Monosnap stał się tak wolny — i rozwiązanie

To nie’zajmowało tyle czasu. Uruchamianie trwało sekundę. Edytor otwierał się natychmiast. Oto’co się zmieniło, dlaczego ten trend się nie odwróci’i lekka alternatywa, która znów działa szybko.

Zimny start do gotowości pierwszej migawki
Monosnap3.2 s
Maxisnap1.1 s
Opóźnienie od zrzutu do edytora
Monosnap1.5–5 s
Maxisnap< 200 ms
RAM w stanie bezczynności po 8 godzinach
Monosnap~800 MB
Maxisnap~50 MB
Opóźnienie adnotacji w edytorze
MonosnapZauważalne
MaxisnapNiewyczuwalne

Podatek Electron, spotęgowany

Monosnap nie’zaczął jako aplikacja Electron. Na początku jego istnienia wiele kodu do przechwytywania i edycji było natywnych. Z czasem komponenty interfejsu użytkownika zostały przebudowane na bazie renderera Chromium — co ułatwiło ich iterację, ale dodało duży, stały koszt uruchamiania.

Electron nie’staje się lżejszy z czasem. Każdego roku Chromium dodaje funkcje, dostarczając więcej kodu, większą bazową pamięć i bardziej skomplikowaną inicjalizację. Aplikacja, która w 2019 roku była akceptowalna przy 60 MB, teraz wymaga minimum 180 MB przy uruchomieniu, a potem rośnie. To’zanim weźmiemy pod uwagę wyciek pamięci, który omówiliśmy na stronie o wycieku pamięci.

Kiedy naciśniesz Ctrl+Alt+5, Monosnap musi rozgrzać renderer Chromium, aby narysować nakładkę przechwytywania. W przypadku zimnej aplikacji, to’to kilkaset milisekund. W przypadku rozgrzanej aplikacji, która już wyciekła do setek megabajtów, to’trwa dłużej. Po pięciu godzinach pracy nakładka rysuje się na tyle wolno, że użytkownicy zauważają różnicę.

Edytor adnotacji jest najgorszym winowajcą

Okno edytora po przechwyceniu to niemal w całości webview Chromium. Kiedy upuścisz strzałkę lub narysujesz prostokąt, narzędzie wysyła zdarzenia przez Electron’granicę IPC do natywnego procesu i z powrotem. Ta podróż w obie strony jest szybka w świeżym procesie i zauważalnie opóźniona, gdy proces jest obciążony.

Dla użytkowników intensywnie korzystających z adnotacji — raporty o błędach, samouczki, dokumentacja — to się sumuje. Dziesięć minut dodawania adnotacji wydaje się dwudziestoma.

Maxisnap: bez Electron, bez obciążeń

Maxisnap’edytor to natywne okno PyQt6. Obszar roboczy adnotacji wykorzystuje QPainter bezpośrednio na QPixmap. Nie ma’webview, żadnej granicy IPC między logiką narzędzia a powierzchnią renderowania. Kiedy upuścisz strzałkę, pojawia się ona w następnym cyklu rysowania. Nie ma podróży w obie strony.

Zimny start z zasobnika do gotowości do przechwytywania trwa około sekundy na typowej maszynie. Przechwytywanie do edytora zajmuje mniej niż 200 ms. Te liczby pozostają takie same po 1, 4, 8 i 72 godzinach. Aplikacja nie’degraduje się z czasem, ponieważ nie ma’nic do akumulacji.

60-sekundowa zmiana

Odzyskaj swoją szybkość

  1. 1
    Pobierz instalator. Strona pobierania, 63 MB, za darmo.
  2. 2
    Zamknij Monosnap z zasobnika, aby obie aplikacje nie’walczyły o skrót klawiszowy.
  3. 3
    Zainstaluj. Ustawienia domyślne są w porządku. Bez ponownego uruchamiania.
  4. 4
    Naciśnij Ctrl+Alt+5. Zauważ, że edytor otwiera się, zanim Ty’skończysz puszczać klawisze.
FAQ

Pytania dotyczące wydajności

Czy mogę przyspieszyć Monosnap bez przełączania?

Marginalnie. Zamykaj aplikację na koniec dnia zamiast trzymać ją uruchomioną. Odznacz „Uruchom zminimalizowany”. Wyłącz wszelkie funkcje synchronizacji w chmurze, których nie’używasz. Żadne z tych działań nie rozwiązuje problemu narzutu strukturalnego, ale nieznacznie pomaga.

Czy Maxisnap’Czy jakość przechwytywania jest taka sama?

Identyczna. Wyjście PNG w pełnej rozdzielczości, bezstratne. JPEG jest również obsługiwany z konfigurowalną jakością. Nie ma’downsamplingu ani zmiany rozmiaru, chyba że dodasz to samodzielnie za pomocą narzędzia do przycinania.

Czy Maxisnap obsługuje przechwytywanie przewijanych obszarów?

Jeszcze nie. Jeśli przechwytywanie przewijanych obszarów jest kluczowe dla Twojego przepływu pracy, ShareX lub Snagit są lepszym wyborem. Do standardowego przechwytywania regionu / pełnego ekranu / okna z adnotacjami, Maxisnap jest szybszy i lżejszy.

Narzędzie do zrzutów ekranu, które pozostaje szybkie.

Bez rozgrzewki. Bez opóźnień. Bez rytualnych restartów.

Pobierz Maxisnap

Powiązane: wyciek pamięci · zawieszanie się · czy jest martwy?