i18n-ai-trans
Version:
i18n-translate 是一个高效、简介的多语言翻译工具,安装后只需简单几步就能实现整个多语言文本的快速翻译。
40 lines (33 loc) • 918 B
JavaScript
function execQueue(arr, maxQueue) {
if(arr.length === 0) return Promise.resolve();
return new Promise(async (resolve) => {
const queue = [];
let activeCount = 0;
const processQueue = async () => {
if(queue.length === 0){
resolve();
return;
}
if (activeCount >= maxQueue) {
return;
}
const task = queue.shift();
activeCount++;
try {
await task();
} catch (error) {
console.error('任务执行失败:', error);
} finally {
activeCount--;
processQueue();
}
};
arr.forEach(task => {
queue.push(task);
processQueue();
});
})
}
module.exports = {
execQueue
}