| 635 | } |
| 636 | |
| 637 | void finalize() override |
| 638 | { |
| 639 | // Discard the futures we're waiting for. |
| 640 | promising.discard(); |
| 641 | writing.discard(); |
| 642 | |
| 643 | // TODO(benh): Discard our promise only after 'promising' and |
| 644 | // 'writing' have completed (ready, failed, or discarded). |
| 645 | promise.discard(); |
| 646 | } |
| 647 | |
| 648 | private: |
| 649 | void runPromisePhase() |