gpt4 book ai didi

javascript - javascript 中的异步事务

转载 作者:搜寻专家 更新时间:2023-11-01 04:44:41 25 4
gpt4 key购买 nike

首先,回滚是我不关心的事情。

我希望能够使用名称/ID(或名称数组)锁定一系列异步函数/ promise /任务(让我们称之为“交易”),以便它们按顺序发生,等等由系统另一部分运行的具有相同名称的任何其他“事务”被延迟开始,直到使用相同名称的正在运行的事务完成。所以它基本上是对异步任务或“事务”序列进行排队。

下面是一些示例代码:

function a()
{
// do stuff
return new Promise(/*...*/);
}


function b()
{
// do stuff
return new Promise(/*...*/);
}



function c()
{
// do stuff
return a.then(() => b());
}

现在系统可以随时调用 abc,而当它调用时我不想 cb 同时运行,但是很明显c 依赖于b

我一直在 npm 上寻找一个包来帮助解决这个问题,但我没有找到任何东西,我想知道是否有人可以提出一些我可能错过的东西来帮助解决这个问题?

最佳答案

我认为gulp任务可以帮助您开箱即用。这保证 c 总是在 b 之后运行,因此 ba

之后运行
const gulp = require('gulp');
gulp.task('a', done => {
// do stuff
console.log('a');
done();
});

gulp.task('b', ['a'], done => {
// do stuff
console.log('b');
done();
});

gulp.task('c', ['b'], done => {
// do more stuff
console.log('c');
done();
});

gulp.start('c'); // Logs a, b, c

Try it!

关于javascript - javascript 中的异步事务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43949458/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com