20 lines
475 B
JavaScript
20 lines
475 B
JavaScript
// 开辟一个新线程: 解决原生定时器延迟问题
|
|
const TimerPond = {};
|
|
|
|
const Handle = {
|
|
setInterval(data) {
|
|
if (TimerPond[data.uuid]) return;
|
|
TimerPond[data.uuid] = setInterval(() => {
|
|
self.postMessage({ uuid: data.uuid, event: 'setInterval' });
|
|
}, data.delay);
|
|
},
|
|
clearInterval(data) {
|
|
clearInterval(TimerPond[data.uuid]);
|
|
delete TimerPond[data.uuid];
|
|
}
|
|
};
|
|
|
|
self.onmessage = function ({ data }) {
|
|
Handle[data.event](data);
|
|
};
|