then
和 catch
都没有执行?那么我们基于这个前提分析一下问题(then 和 catch 都没有执行)。
Promise.all 是什么时候执行 then 呢?[p1, p2, p3,...]
都执行完成,也就是 resolved
状态。那么问题就很显然了,必定是因为里面有的没有没有执行完。
解决方法。
- 内部设置一个超时时间。
-
排查内部逻辑。看看是因为什么卡住了。
- 网络问题,因为瞬时流量太大,导致所有请求都延时了
- 有没有处理到的逻辑(比如说取任务执行,结果任务被执行了,然后他就傻了)
- 死锁之类的逻辑
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…