您可以使用 停止async函数之外的代码await吗?但是,我不希望所有代码都停止。我想控制将运行哪些代码。
我认为可能有一个解决方案,如下所示:
var isAsyncRunning = false;
var currentPromise;
async function asyncFunc(){
isAsyncRunning = true;
//Do some code here
currentPromise = promise; //promise was defined inside the code
await promise;
promise.then(function(){
isAsyncRunning = false;
});
}
async function anotherFunction(){
if(!isAsyncRunning){
await currentPromise;
}
//Do some other code here
}
Run Code Online (Sandbox Code Playgroud)
但是,我有很多功能,并且不想将其应用于我拥有的每一个功能。
有更好的解决方案吗?如果没有,我能做些什么来减少这种耗时?