代码之家  ›  专栏  ›  技术社区  ›  Nick Reshetinsky

如何理解非IO绑定的异步代码

  •  0
  • Nick Reshetinsky  · 技术社区  · 6 年前

    我在理解异步代码如何在非IO操作中工作方面存在差距。 任务。运行({method})

    1 回复  |  直到 6 年前
        1
  •  4
  •   Marc Gravell    6 年前

    即使是纯CPU限制的情况下, async / await

    • 并非所有线程都是相等的;在客户端应用程序中,它是相等的 有助于释放UI线程,使其能够执行诸如绘制和响应事件循环事件之类的事情,而其他工作则在后台继续进行;这可以通过多种方式完成,其中之一是: 异步 / ;或者-某些线程可能使用不同的优先级
    • 有时,您可以有效地并行化工作,无论是在工作线程处理任务时计算其他工作,还是在两个线程之间拆分单个工作 许多的 线程;在任何一种情况下 异步 / 可以 用于协调(“连接”)这些操作
    • 只是 等待 它(不同时执行任何其他操作,也没有任何特殊的线程条件)-那么 异步