bkietz opened a new pull request #8591:
URL: https://github.com/apache/arrow/pull/8591


   `Future<Status>` and `Future<void>` now support the `result()` member 
function; their `ValueType` is an empty struct. This will simplify generic code 
handling `Future<T>` since special cases which avoid `result()` need not be 
written for statusy futures.
   
   Details:
   - `DeferNotOk` and `ExecuteAndMarkFinished` are no longer members of 
`Future<>`
   - Constructing finished Futures no longer locks the waiter mutex
   - Future now holds a `shared_ptr<FutureImpl>` directly. `FutureImpl` stores 
the Future's result in a type erased allocation.
   - `FutureStorage<>` and `FutureStorageBase` are obviated and have been 
removed
   - deleted `Executor::SubmitAsFuture()` since it isn't used and can be 
trivially replaced: `ex->SubmitAsFuture(f)` -> `DeferNotOk(ex->Submit(f))`


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to