std::async default launch policy


With std::async, if both the std::launch::async and std::launch::deferred flags are set in policy, what exactly does trunk libc++ do? Does it for example check the current load of the system and the number of CPUs to decide at runtime whether to run in a separate thread or whether to lazily defer?

If you could point out the relevant section of code under I’d appreciate it.

Thanks for your time,