66import { Barrier } from 'vs/base/common/async' ;
77import { Emitter } from 'vs/base/common/event' ;
88import { Disposable } from 'vs/base/common/lifecycle' ;
9+ import { mark } from 'vs/base/common/performance' ;
910import { URI } from 'vs/base/common/uri' ;
1011import { IPtyHostProcessReplayEvent , ISerializedCommandDetectionCapability } from 'vs/platform/terminal/common/capabilities/capabilities' ;
1112import { IProcessDataEvent , ITerminalChildProcess , ITerminalLaunchError , IProcessProperty , IProcessPropertyMap , ProcessPropertyType , IProcessReadyEvent , ITerminalLogService } from 'vs/platform/terminal/common/terminal' ;
@@ -32,6 +33,8 @@ export class RemotePty extends Disposable implements ITerminalChildProcess {
3233
3334 private readonly _onProcessData = this . _register ( new Emitter < string | IProcessDataEvent > ( ) ) ;
3435 readonly onProcessData = this . _onProcessData . event ;
36+ private readonly _onProcessReplayComplete = this . _register ( new Emitter < void > ( ) ) ;
37+ readonly onProcessReplayComplete = this . _onProcessReplayComplete . event ;
3538 private readonly _onProcessReady = this . _register ( new Emitter < IProcessReadyEvent > ( ) ) ;
3639 readonly onProcessReady = this . _onProcessReady . event ;
3740 private readonly _onDidChangeProperty = this . _register ( new Emitter < IProcessProperty < any > > ( ) ) ;
@@ -176,6 +179,7 @@ export class RemotePty extends Disposable implements ITerminalChildProcess {
176179 }
177180
178181 async handleReplay ( e : IPtyHostProcessReplayEvent ) {
182+ mark ( `code/terminal/willHandleReplay/${ this . id } ` ) ;
179183 try {
180184 this . _inReplay = true ;
181185 for ( const innerEvent of e . events ) {
@@ -197,6 +201,9 @@ export class RemotePty extends Disposable implements ITerminalChildProcess {
197201
198202 // remove size override
199203 this . _onDidChangeProperty . fire ( { type : ProcessPropertyType . OverrideDimensions , value : undefined } ) ;
204+
205+ mark ( `code/terminal/didHandleReplay/${ this . id } ` ) ;
206+ this . _onProcessReplayComplete . fire ( ) ;
200207 }
201208
202209 handleOrphanQuestion ( ) {
0 commit comments