Asynchronous Programming with Seastar

Nadav Har’El - nyh@ScyllaDB.com

Avi Kivity - avi@ScyllaDB.com

Back to table of contents. Previous: 8 Lifetime management. Next: 10 Fibers.

9 Advanced futures

9.1 Futures and interruption

TODO: A future, e.g., sleep(10s) cannot be interrupted. So if we need to, the promise needs to have a mechanism to interrupt it. Mention pipe’s close feature, semaphore stop feature, etc.

9.2 Futures are single use

TODO: Talk about if we have a future<int> variable, as soon as we get() or then() it, it becomes invalid - we need to store the value somewhere else. Think if there’s an alternative we can suggest

Back to table of contents. Previous: 8 Lifetime management. Next: 10 Fibers.