-
Notifications
You must be signed in to change notification settings - Fork 34.2k
Closed
Labels
insiders-releasedPatch has been released in VS Code InsidersPatch has been released in VS Code InsiderssandboxRunning VSCode in a node-free environmentRunning VSCode in a node-free environmentshared-processVS Code shared process issuesVS Code shared process issuesterminalGeneral terminal issues that don't fall under another labelGeneral terminal issues that don't fall under another label
Milestone
Description
Follow up from #154050
We now have sufficient infrastructure in place to easily fork a UtilityProcess
with support of message port communication to other processes:
export class UtilityProcess extends Disposable { |
Currently the PTY agent is still running as child process in the shared process housing all terminals:
vscode/src/vs/code/node/sharedProcess/sharedProcessMain.ts
Lines 386 to 399 in ed6bb07
const ptyHostService = new PtyHostService({ | |
graceTime: LocalReconnectConstants.GraceTime, | |
shortGraceTime: LocalReconnectConstants.ShortGraceTime, | |
scrollback: configurationService.getValue<number>(TerminalSettingId.PersistentSessionScrollback) ?? 100 | |
}, | |
localize('ptyHost', "Pty Host"), | |
configurationService, | |
environmentService, | |
logService, | |
loggerService | |
); | |
ptyHostService.initialize(); | |
services.set(ILocalPtyService, this._register(ptyHostService)); |
We should consider moving the PTY agent out into a standalone utility process to reduce pressure on the shared process (and actually vice versa, reduce pressure on terminals).
joaomoreno
Metadata
Metadata
Labels
insiders-releasedPatch has been released in VS Code InsidersPatch has been released in VS Code InsiderssandboxRunning VSCode in a node-free environmentRunning VSCode in a node-free environmentshared-processVS Code shared process issuesVS Code shared process issuesterminalGeneral terminal issues that don't fall under another labelGeneral terminal issues that don't fall under another label