diff --git a/src/mode.ts b/src/mode.ts index 0346f2bc..b8d22def 100644 --- a/src/mode.ts +++ b/src/mode.ts @@ -57,7 +57,7 @@ function setupMode(defaults:LanguageServiceDefaultsImpl, modeId:string, language let disposables: IDisposable[] = []; - const client = new WorkerManager(defaults); + const client = new WorkerManager(modeId, defaults); disposables.push(client); const worker = (first: Uri, ...more: Uri[]): Promise => { diff --git a/src/workerManager.ts b/src/workerManager.ts index cd17a3f6..adf63226 100644 --- a/src/workerManager.ts +++ b/src/workerManager.ts @@ -13,6 +13,7 @@ import Uri = monaco.Uri; export class WorkerManager { + private _modeId: string; private _defaults: LanguageServiceDefaultsImpl; private _idleCheckInterval: number; private _lastUsedTime: number; @@ -21,7 +22,8 @@ export class WorkerManager { private _worker: monaco.editor.MonacoWebWorker; private _client: Promise; - constructor(defaults: LanguageServiceDefaultsImpl) { + constructor(modeId:string, defaults: LanguageServiceDefaultsImpl) { + this._modeId = modeId; this._defaults = defaults; this._worker = null; this._idleCheckInterval = setInterval(() => this._checkIfIdle(), 30 * 1000); @@ -63,6 +65,8 @@ export class WorkerManager { // module that exports the create() method and returns a `TypeScriptWorker` instance moduleId: 'vs/language/typescript/src/worker', + label: this._modeId, + // passed in to the create() method createData: { compilerOptions: this._defaults.getCompilerOptions(),