The behavior of clearInterval and clearTimeout differs from what is written on MDN
Closed this issue · 2 comments
First of all, thank you for this incredible library! timers in web workers are wonderful and much more reliable
MDN says Passing an invalid ID to clearTimeout() silently does nothing; no exception is thrown
but workers-timers
throw an error when i pass a invalid id to clearInterval or clearTimeout and this error cannot caught by try-catch, this has caused me some strange infinite loop problems
repro: https://stackblitz.com/edit/vitejs-vite-sg1zde?file=src%2FApp.tsx
Hi @luccasr73, thanks for reporting this. When looking into it I realized that this behavior even caused a memory on the worker. I aligned the behavior with the one of the native timers. I published the changes as v8.0.0.
The only remaining difference should be that intervals and timeouts are handled separately.
Lines 45 to 59 in 10fa538
thanks for the fix