[PR #11890] [MERGED] Improve responsiveness of conhost/ConPTY for large inputs #28785

Open
opened 2026-01-31 09:30:44 +00:00 by claunia · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/microsoft/terminal/pull/11890
Author: @lhecker
Created: 12/7/2021
Status: Merged
Merged: 1/14/2022
Merged by: @DHowett

Base: mainHead: dev/lhecker/issue-11794-stuttering


📝 Commits (6)

  • deb1c62 Improve responsiveness of conhost/ConPTY for large inputs
  • 75f2609 Fix test failure
  • f16c967 Revert unnecessary change
  • b68d004 Address feedback
  • 9a7462f Revert src/host/_stream.cpp
  • 2bf1000 Address feedback

📊 Changes

4 files changed (+74 additions, -134 deletions)

View changed files

📝 src/host/CursorBlinker.cpp (+30 -97)
📝 src/host/CursorBlinker.hpp (+9 -11)
📝 src/host/consoleInformation.cpp (+31 -19)
📝 src/host/server.h (+4 -7)

📄 Description

This commit replaces the console lock was replaced with a fair ticket
lock implementation, as only fair locks guarantee us that the renderer
(or other parts) can acquire the lock, once the VT parser has finally
released it.

This is related to https://github.com/microsoft/terminal/issues/11794.

Validation Steps Performed

  • No obvious crashes
  • No text/VT performance regression
  • Cursor blinker starts/stops on focus/defocus of the window

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/microsoft/terminal/pull/11890 **Author:** [@lhecker](https://github.com/lhecker) **Created:** 12/7/2021 **Status:** ✅ Merged **Merged:** 1/14/2022 **Merged by:** [@DHowett](https://github.com/DHowett) **Base:** `main` ← **Head:** `dev/lhecker/issue-11794-stuttering` --- ### 📝 Commits (6) - [`deb1c62`](https://github.com/microsoft/terminal/commit/deb1c62f321f844678df5e90a26b7a8096dde854) Improve responsiveness of conhost/ConPTY for large inputs - [`75f2609`](https://github.com/microsoft/terminal/commit/75f26091c3342774990110468aa5822c42146b02) Fix test failure - [`f16c967`](https://github.com/microsoft/terminal/commit/f16c967c0ef3c75c82417d580bb86efcd4ec6ca1) Revert unnecessary change - [`b68d004`](https://github.com/microsoft/terminal/commit/b68d004100f49ace1b50c0a4dfc7b3499a170ac3) Address feedback - [`9a7462f`](https://github.com/microsoft/terminal/commit/9a7462f4d7001cfc42d00b9256278ecd5e0d865e) Revert src/host/_stream.cpp - [`2bf1000`](https://github.com/microsoft/terminal/commit/2bf10007ffc368e8a0ccf31f47de9fb045d38f40) Address feedback ### 📊 Changes **4 files changed** (+74 additions, -134 deletions) <details> <summary>View changed files</summary> 📝 `src/host/CursorBlinker.cpp` (+30 -97) 📝 `src/host/CursorBlinker.hpp` (+9 -11) 📝 `src/host/consoleInformation.cpp` (+31 -19) 📝 `src/host/server.h` (+4 -7) </details> ### 📄 Description This commit replaces the console lock was replaced with a fair ticket lock implementation, as only fair locks guarantee us that the renderer (or other parts) can acquire the lock, once the VT parser has finally released it. This is related to https://github.com/microsoft/terminal/issues/11794. ## Validation Steps Performed * No obvious crashes ✅ * No text/VT performance regression ✅ * Cursor blinker starts/stops on focus/defocus of the window ✅ --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
claunia added the pull-request label 2026-01-31 09:30:44 +00:00
Sign in to join this conversation.
No Label pull-request
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#28785