Skip to content

Commit 21563bc

Browse files
committed
fix: Use exponential back-off for offscreen canvas polling (#8811)
1 parent 1672ca0 commit 21563bc

1 file changed

Lines changed: 7 additions & 2 deletions

File tree

src/component/Canvas.mjs

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,8 @@ class Canvas extends Component {
6666
}
6767

6868
if (offscreen) {
69-
let data;
69+
let data,
70+
delay = 50;
7071

7172
while (me.mounted && !me.offscreenRegistered && !me.isDestroyed) {
7273
data = await Neo.main.DomAccess.getOffscreenCanvas({
@@ -97,7 +98,11 @@ class Canvas extends Component {
9798
}
9899
}
99100

100-
await me.timeout(50)
101+
await me.timeout(delay);
102+
103+
if (delay < 1000) {
104+
delay *= 2
105+
}
101106
}
102107
}
103108
} else if (offscreen) {

0 commit comments

Comments
 (0)