macvim-dev / macvim-dev/macvim

MacVim hangs for minutes with hundreds of threads

Offen
#1,204 25 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
Vim Script
Sterne
7.9k
Forks
691
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Describe the bug
I'm a daily user of MacVim and my work depends on it. MacVim occasionally hangs for minutes with hundreds of threads (500 or more) when editing some specific large file(s). I had this happen several times, but only once a day at the most. It could be a syntax highlighting problem perhaps. It's difficult to reproduce exactly.

To Reproduce
Detailed steps to reproduce the behavior:

  1. Run open -a MacVim Forth500.s
  2. Edit Forth500.s and perhaps some other files in other windows (but don't think that matters)
  3. Change Syntax to Assembly/Turbo then navigate, search, type, etc.
  4. Eventually the problem occurs, but I can't tell when and why. It may happen after a while, so it's not frequent, fortunately for me.

Expected behavior
No hot laptop!

Screenshots
N/A

Environment (please complete the following information):

  • MacVim version: Custom Version 8.2.2681 (171)
  • OS: MacOS 10.15.7
  • Terminal: N/A

Additional context
The Forth500.s file is here: https://github.com/Robert-van-Engelen/Forth500/blob/main/Forth500.s

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne damit, den Hänger mit open -a MacVim Forth500.s zu reproduzieren, und bearbeite dann Forth500.s, während du die Assembly/Turbo-Syntax verwendest und navigierst, suchst oder tippst. Vergleiche das Verhalten mit der bereitgestellten Datei Forth500.s und der gemeldeten Umgebung MacVim 8.2.2681; abgeschlossen ist die Aufgabe, wenn eine zuverlässige Ursache identifiziert und bestätigt wurde, dass der minutenlange Hänger und das Anwachsen der Thread-Anzahl nicht mehr auftreten.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
macos, vim
Bereich
desktop-dev, performance
Issue-Typ
Bug
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
15/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.