可取消异步流 (CAF)
function* 产生器的包装器,它将它们视为 async function,但支持通过令牌进行外部取消。通过这种方式,您可以表达看起来同步的异步逻辑流,这些流仍然可以取消 (Cancelable Async Flows)。此外,还包括 CAG(..),用于以替代方式包装 function* 产生器,以模仿 ES2018 异步生成器 (async function *)。CAF(Cancelable Async Flows)将一个 function* 生成器包装成一个看起来和行为像 async function 的对象,但可以通过外部取消令牌来取消它:
生成器接收了取消令牌的 signal,因此您可以在生成器内部通过 CAF 调用另一个 function* 生成器,并传递共享的 signal。通过这种方式,单个取消信号可以在执行链中传递并取消所有包装在 CAF 中的函数:
暂无开放 Issues,或尚未同步最近议题。