murphypei / murphypei.github.io

15 stars 6 forks source link

C++11 并发编程系列(四):异步操作(future) 中的 async理解是否有一些错误呢? #87

Open sterben-01 opened 2 years ago

sterben-01 commented 2 years ago

您好,您提到了async是包装了packaged_task, promise和future的功能。我个人觉得packaged_task和promise没什么特别大的关联。async应该仅仅是包装了thread 和 packaged_task,让执行异步操作更为方便。

sterben-01 commented 2 years ago

同样的,在async介绍中。如果选用了deferred,则不会产出新线程。

std::launch::deferred **the task is executed on the calling thread the first time its result is requested (lazy evaluation)**