(machineId: string, sqmId: string, devDeviceId: string)
| 1057 | } |
| 1058 | |
| 1059 | private setupSharedProcess(machineId: string, sqmId: string, devDeviceId: string): { sharedProcessReady: Promise<MessagePortClient>; sharedProcessClient: Promise<MessagePortClient> } { |
| 1060 | const sharedProcess = this._register(this.mainInstantiationService.createInstance(SharedProcess, machineId, sqmId, devDeviceId)); |
| 1061 | |
| 1062 | this._register(sharedProcess.onDidCrash(() => this.windowsMainService?.sendToFocused('vscode:reportSharedProcessCrash'))); |
| 1063 | |
| 1064 | const sharedProcessClient = (async () => { |
| 1065 | this.logService.trace('Main->SharedProcess#connect'); |
| 1066 | |
| 1067 | const port = await sharedProcess.connect(); |
| 1068 | |
| 1069 | this.logService.trace('Main->SharedProcess#connect: connection established'); |
| 1070 | |
| 1071 | return new MessagePortClient(port, 'main'); |
| 1072 | })(); |
| 1073 | |
| 1074 | const sharedProcessReady = (async () => { |
| 1075 | await sharedProcess.whenReady(); |
| 1076 | |
| 1077 | return sharedProcessClient; |
| 1078 | })(); |
| 1079 | |
| 1080 | return { sharedProcessReady, sharedProcessClient }; |
| 1081 | } |
| 1082 | |
| 1083 | private async initServices(machineId: string, sqmId: string, devDeviceId: string, sharedProcessReady: Promise<MessagePortClient>): Promise<IInstantiationService> { |
| 1084 | const services = new ServiceCollection(); |
no test coverage detected