If f is marked async, then a fresh instance o implementing the | |
built-in class Future is associated with the invocation and immediately returned | |
to the caller. The body of f is scheduled for execution at some future time. The | |
future o will complete when f terminates. The value used to complete o is the | |
current return value, if it is defined, and the current exception otherwise. | |