@@ -8,14 +8,15 @@ import { Emitter } from 'vs/base/common/event';
88import { revive } from 'vs/base/common/marshalling' ;
99import { PerformanceMark , mark } from 'vs/base/common/performance' ;
1010import { IProcessEnvironment , OperatingSystem } from 'vs/base/common/platform' ;
11+ import { StopWatch } from 'vs/base/common/stopwatch' ;
1112import { ICommandService } from 'vs/platform/commands/common/commands' ;
1213import { IConfigurationService } from 'vs/platform/configuration/common/configuration' ;
1314import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation' ;
1415import { Registry } from 'vs/platform/registry/common/platform' ;
1516import { IRemoteAuthorityResolverService } from 'vs/platform/remote/common/remoteAuthorityResolver' ;
1617import { IStorageService , StorageScope , StorageTarget } from 'vs/platform/storage/common/storage' ;
1718import { ISerializedTerminalCommand } from 'vs/platform/terminal/common/capabilities/capabilities' ;
18- import { IShellLaunchConfig , IShellLaunchConfigDto , ITerminalBackend , ITerminalBackendRegistry , ITerminalChildProcess , ITerminalEnvironment , ITerminalLogService , ITerminalProcessOptions , ITerminalProfile , ITerminalsLayoutInfo , ITerminalsLayoutInfoById , ProcessPropertyType , TerminalExtensions , TerminalIcon , TerminalSettingId , TitleEventSource } from 'vs/platform/terminal/common/terminal' ;
19+ import { IPtyHostLatencyMeasurement , IShellLaunchConfig , IShellLaunchConfigDto , ITerminalBackend , ITerminalBackendRegistry , ITerminalChildProcess , ITerminalEnvironment , ITerminalLogService , ITerminalProcessOptions , ITerminalProfile , ITerminalsLayoutInfo , ITerminalsLayoutInfoById , ProcessPropertyType , TerminalExtensions , TerminalIcon , TerminalSettingId , TitleEventSource } from 'vs/platform/terminal/common/terminal' ;
1920import { IProcessDetails } from 'vs/platform/terminal/common/terminalProcess' ;
2021import { IWorkspaceContextService } from 'vs/platform/workspace/common/workspace' ;
2122import { IWorkbenchContribution } from 'vs/workbench/common/contributions' ;
@@ -260,6 +261,19 @@ class RemoteTerminalBackend extends BaseTerminalBackend implements ITerminalBack
260261 return this . _remoteTerminalChannel . listProcesses ( ) ;
261262 }
262263
264+ async getLatency ( ) : Promise < IPtyHostLatencyMeasurement [ ] > {
265+ const sw = new StopWatch ( ) ;
266+ const results = await this . _remoteTerminalChannel . getLatency ( ) ;
267+ sw . stop ( ) ;
268+ return [
269+ {
270+ label : 'window<->ptyhost' ,
271+ latency : sw . elapsed ( )
272+ } ,
273+ ...results
274+ ] ;
275+ }
276+
263277 async updateProperty < T extends ProcessPropertyType > ( id : number , property : T , value : any ) : Promise < void > {
264278 await this . _remoteTerminalChannel . updateProperty ( id , property , value ) ;
265279 }
0 commit comments