Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How to block until promise completes? #178

Open
ericsonggg opened this issue Oct 7, 2021 · 3 comments
Open

How to block until promise completes? #178

ericsonggg opened this issue Oct 7, 2021 · 3 comments

Comments

@ericsonggg
Copy link

I have a use case that needs to use Promises, but the old calling code is synchronous. In Swift, is there a way to block the synchronous caller to wait for the promise to finish? I don't think I can use a custom dispatch queue since it needs to execute on the main thread.

Callback methods unfortunately do not work since the promise needs to start and complete at the middle of a long chain of synchronous commands.

@shoumikhin
Copy link
Contributor

Hi Eric, you can try awaitPromise or that https://github.com/google/promises/blob/master/g3doc/index.md#awaitpromise

@ericsonggg
Copy link
Author

Is there a different import for awaitPromise? It seems to not be included in import Promises

@ericsonggg
Copy link
Author

also, is awaitPromise only usable from within another Promise? If I'm executing code on the main thread, I'd like to block that immediately for a return from a promise on a different thread. If I have to create a new Promise on main to block on an existing promise, that new Promise will not be able to execute until all the main thread processing is complete

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants