processImage()是一个异步处理图像的函数。
uploadImage()是一个异步上传图片的函数。
他们都返回承诺。
sizes是长度为4的数组。
图像应仅在处理后上传。单一尺寸的上传和处理不能并行进行。
我想要做的是一个接一个地立即启动所有 4 个处理/上传作业,并让它们一起异步执行。一旦所有 4 个都完成,我将执行一些其他代码。
由于我将异步函数作为参数传递给映射,await其中的关键字是否会暂停执行直到第一张图像的处理/上传完成?在这种情况下,这将成为同步执行。我不明白这里到底发生了什么。如果这段代码确实是同步的,我该如何让它异步呢?
var responses = await Promise.all(sizes.map(async function (size) {
let processedBuffer = await processImage(buffer, size);
let response = await uploadImage(processedBuffer.toString('base64'));
return response;
}));
//some other code
慕尼黑的夜晚无繁华
达令说
相关分类