increase listener refusal threshold significantly (#213292)

* increase listener refusal threshold significantly

* fix tests
This commit is contained in:
Johannes Rieken
2024-05-23 11:07:47 +02:00
committed by GitHub
parent 3683ed7151
commit d42d42e5b0
2 changed files with 4 additions and 4 deletions
+1 -1
View File
@@ -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);
+3 -3
View File
@@ -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);