Asynchronous Tokio反应堆是否在每个组合器之间轮询所有可能的poll()函数?
对Asynchronous Tokio反应堆是否在每个组合器之间轮询所有可能的poll()函数?,asynchronous,rust,rust-tokio,Asynchronous,Rust,Rust Tokio,对poll的调用永远不能阻塞,否则异步内核执行的整个线程将被阻塞,停止所有可能的因果关系,直到阻塞函数返回 我在反应堆上生成了一个未来,有一系列的组合体,比如my\u future.and\u then(…).map(…).then(…) 反应器轮询未来,然后在执行下一个和_然后组合器之前,反应器是否迭代所有其他未来,检查它们是否准备就绪,或者反应器是否遵循我的未来和_然后(…).map(…)的所有组合步骤。然后(…) 我问这个问题是因为考虑到异步核心的因果关系,知道如何设计我的程序很重要。据异
poll
的调用永远不能阻塞,否则异步内核执行的整个线程将被阻塞,停止所有可能的因果关系,直到阻塞函数返回
我在反应堆上生成了一个未来,有一系列的组合体,比如my\u future.and\u then(…).map(…).then(…)
反应器轮询未来,然后在执行下一个和_然后
组合器之前,反应器是否迭代所有其他未来,检查它们是否准备就绪,或者反应器是否遵循我的未来和_然后(…).map(…)的所有组合步骤。然后(…)
我问这个问题是因为考虑到异步核心的因果关系,知道如何设计我的程序很重要。据异步执行器所知,没有中间步骤。每一个组合器都消耗了以前的未来,产生了一个全新的未来。最后,将一个未来交给执行者,它根据需要对该未来调用
poll
由每一个父期货决定是否以及何时轮询任何子期货,但这只能在轮询父期货时发生
另见: