microsoft / microsoft/terminal

Handoff from conhost to Terminal can take over 5 seconds

Open
#19,602 6 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Area-DefApp Area-Performance Issue-Bug Product-Conhost Product-Conpty
Dominant language
C++
Stars
105k
Forks
9.6k
Avg merge
3d 17h
Merged PRs (30d)
29

Description

Windows Terminal version

1.23.12811.0

Windows build number

10.0.26100.0

Other Software

No response

Steps to reproduce

The easiest repro is to create a Windows "Hello World" app that calls system("dir"). The actual command does not matter, it is just the act of creating shell.

Expected Behavior

No response

Actual Behavior

If running as admin or after changing the default terminal application to console host, it is almost instant. Running as a regular user with Terminal as default freezes the app for 5+ seconds. It does not seem to affect C# apps. Handoff from conhost.exe to Windows Terminal can take over 5 seconds (each time).
A longer write-up with some more findings can be found here: http://msinilo.pl/blog2/post/chasing-a-hitch/

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the delay with a Windows Hello World app that calls system("dir") as a regular user with Windows Terminal set as the default terminal. Compare the handoff with an administrator account, console host as default, and a C# app, then review the linked write-up for additional findings. Done means identifying and addressing the repeated 5+ second conhost.exe-to-Terminal handoff.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
cli, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.