server: watch for worker errors

This commit is contained in:
Koushik Dutta
2022-02-11 12:33:08 -08:00
parent 7b85a5c0ed
commit ae57dea333
3 changed files with 21 additions and 5 deletions

View File

@@ -55,6 +55,13 @@ export class PythonRuntimeWorker extends ChildProcessWorker {
}
send(message: RpcMessage, reject?: (e: Error) => void): void {
(this.worker.stdio[3] as Writable).write(JSON.stringify(message) + '\n', e => e && reject?.(e));
try {
if (!this.worker)
throw new Error('worked has been killed');
(this.worker.stdio[3] as Writable).write(JSON.stringify(message) + '\n', e => e && reject?.(e));
}
catch (e) {
reject?.(e);
}
}
}