mirror of
https://github.com/microsoft/vscode.git
synced 2026-07-17 17:33:32 +01:00
increase listener refusal threshold significantly (#213292)
* increase listener refusal threshold significantly * fix tests
This commit is contained in:
@@ -1065,7 +1065,7 @@ export class Emitter<T> {
|
||||
*/
|
||||
get event(): Event<T> {
|
||||
this._event ??= (callback: (e: T) => any, thisArgs?: any, disposables?: IDisposable[] | DisposableStore) => {
|
||||
if (this._leakageMon && this._size > this._leakageMon.threshold * 3) {
|
||||
if (this._leakageMon && this._size > this._leakageMon.threshold ** 2) {
|
||||
const message = `[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far (${this._size} vs ${this._leakageMon.threshold})`;
|
||||
console.warn(message);
|
||||
|
||||
|
||||
@@ -376,14 +376,14 @@ suite('Event', function () {
|
||||
|
||||
const a = ds.add(new Emitter<undefined>({
|
||||
onListenerError(e) { allError.push(e); },
|
||||
leakWarningThreshold: 1,
|
||||
leakWarningThreshold: 3,
|
||||
}));
|
||||
|
||||
for (let i = 0; i < 5; i++) {
|
||||
for (let i = 0; i < 11; i++) {
|
||||
a.event(() => { }, undefined, store);
|
||||
}
|
||||
|
||||
assert.deepStrictEqual(allError.length, 4);
|
||||
assert.deepStrictEqual(allError.length, 5);
|
||||
const [start, tail] = tail2(allError);
|
||||
assert.ok(tail instanceof ListenerRefusalError);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user