fix: rkey cached

This commit is contained in:
linyuchen 2024-05-06 19:44:25 +08:00
parent ad251a7682
commit a566dd390b

View File

@ -1,6 +1,6 @@
import { sleep } from '@/common/utils/helper';
type AsyncQueueTask = (() => void) | Promise<void> ;
type AsyncQueueTask = (() => void) | (()=>Promise<void>);
export class AsyncQueue {
@ -8,20 +8,22 @@ export class AsyncQueue {
public addTask(task: AsyncQueueTask) {
this.tasks.push(task);
// console.log('addTask', this.tasks.length);
if (this.tasks.length === 1) {
this.runQueue().then().catch(()=>{});
}
}
private async runQueue() {
// console.log('runQueue', this.tasks.length);
while (this.tasks.length > 0) {
const task = this.tasks[0];
// console.log('typeof task', typeof task);
try {
if (task instanceof Promise) {
await task;
}
else{
task();
const taskRet = task();
// console.log('type of taskRet', typeof taskRet, taskRet);
if (taskRet instanceof Promise) {
await taskRet;
}
} catch (e) {
console.error(e);