-
Notifications
You must be signed in to change notification settings - Fork 37.6k
Open
Labels
freeze-slow-crash-leakVS Code crashing, performance, freeze and memory leak issuesVS Code crashing, performance, freeze and memory leak issues
Description
There are instances of ResourcePool where from the factory method, disposables are registered to the outer container (via this._register), not the thing itself:
vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.ts
Lines 199 to 204 in a69f194
| this._pool = this._register(new ResourcePool(() => this.listFactory())); | |
| } | |
| private listFactory(): WorkbenchList<IChatCollapsibleListItem> { | |
| const resourceLabels = this._register(this.instantiationService.createInstance(ResourceLabels, { onDidChangeVisibility: this._onDidChangeVisibility })); | |
vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTreeContentPart.ts
Lines 96 to 101 in a69f194
| this._pool = this._register(new ResourcePool(() => this.treeFactory())); | |
| } | |
| private treeFactory(): WorkbenchCompressibleAsyncDataTree<IChatResponseProgressFileTreeData, IChatResponseProgressFileTreeData, void> { | |
| const resourceLabels = this._register(this.instantiationService.createInstance(ResourceLabels, { onDidChangeVisibility: this._onDidChangeVisibility })); | |
A good use seems to be:
vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatChangesSummaryPart.ts
Line 199 in a69f194
| class CollapsibleChangesSummaryListPool extends Disposable { |
Metadata
Metadata
Assignees
Labels
freeze-slow-crash-leakVS Code crashing, performance, freeze and memory leak issuesVS Code crashing, performance, freeze and memory leak issues