Skip to content

Commit d4d272e

Browse files
committed
Force server shutdown after 2 seconds
See atom/ide-typescript@d9d2592
1 parent 5920b9d commit d4d272e

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

lib/main.js

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,22 @@ class PythonLanguageClient extends AutoLanguageClient {
7474
if (!PYTHON_REGEX.test(request.prefix)) return null;
7575
return super.getSuggestions(request);
7676
}
77+
78+
deactivate() {
79+
return Promise.race([super.deactivate(), this.createTimeoutPromise(2000)]);
80+
}
81+
82+
createTimeoutPromise(milliseconds) {
83+
return new Promise((resolve, reject) => {
84+
let timeout = setTimeout(() => {
85+
clearTimeout(timeout);
86+
this.logger.error(
87+
`Server failed to shutdown in ${milliseconds}ms, forcing termination`
88+
);
89+
resolve();
90+
}, milliseconds);
91+
});
92+
}
7793
}
7894

7995
module.exports = new PythonLanguageClient();

0 commit comments

Comments
 (0)