Executes the call asynchronously, on a background thread. Safe to call from the main thread.
The callback will only be invoked in case the Call is not canceled, and always on the main thread.