Guards the execution of the task with a waitable/releasable object. * * Equivalent to Succeed + ReleaseAfterRun. */
| 536 | * Equivalent to Succeed + ReleaseAfterRun. |
| 537 | */ |
| 538 | Task *GuardWith(std::shared_ptr<Releasable> releasable) { |
| 539 | Succeed(releasable); |
| 540 | ReleaseAfterRun(std::move(releasable)); |
| 541 | return this; |
| 542 | } |
| 543 | |
| 544 | /** Executes the task. */ |
| 545 | void Run(); |
no outgoing calls