如果您所做的只是等待它完成,为什么要使用异步

Why use async if all you do is wait for it to complete?

本文关键字:为什么 异步 等待 如果      更新时间:2023-10-16

我遇到了一些这样的C++代码:

aThread->async( [=]() {
    // ... do stuff ...
} ).wait();

如果您所做的只是等待线程完成,那么在线程上运行代码有什么意义? 为什么不将上面的代码替换为:

// ... do stuff ...

是的,我同意。创建一个线程,然后等待线程完成,这几乎没有什么用处。

也许 aThread 拥有完成工作所必需的资源,您不能使用它们或在调用线程中创建它们。