alibaba / async_simple

Simple, light-weight and easy-to-use asynchronous components
Apache License 2.0
1.69k stars 251 forks source link

feat: add Future.setResumeBySchedule interface #357

Closed chloro-pn closed 10 months ago

chloro-pn commented 10 months ago

Why

co_await future resume的时候是走schedule还是checkin,应该由用户来决定,现在的实现默认走checkin,很多情况下是没必要的。 注:不应该通过不实现Executor的checkin接口来达到上述目的,因为很可能一些Future需要checkin而一些Future不需要。

What is changing

no incompatible changes

Example

chloro-pn commented 10 months ago

额,我现在有权限直接merge了

ChuanqiXu9 commented 10 months ago

额,我现在有权限直接merge了

OK,那像 https://github.com/alibaba/async_simple/pull/353 这种比较 trivial 且你有非常强信心是正确的 patch,你就可以直接 merge 了

RainMark commented 10 months ago

我记得promise里有个forceSched就是控制这个的

RainMark commented 10 months ago

哦哦,forceSched说的是一定要走一下调度。这里看起来是说控制可以不checkin回到之前的线程