Forming a good question often leads to the answer in of itself. By writing it down and emailing it instead, the person can answer it at their own leisure, and the response can be easily shared with the whole team to learn from.
Even better, if that fails, you now have a copy you can easily post to a github issue or mailing list (or stack overflow, if you prefer).
When I have trouble with something, instead of reaching for colleagues, google, or stack overflow, I just read the manual(s) top to bottom, multiple times if necessary, or the source code, or write prototyping test cases.
Even if it doesn't always solve my problem, the things I learned in the meantime always pays back later. The downside is I inevitably become the person to ask for help, and I'm always told "How do you know so much?", and I tell them exactly that, but they don't seem to get the hint, I'll see them again in the near future. I've even been previously termed as a kind of "real life stack overflow".
I suspect it may be a generational issue -- those of us who were left to solve difficult problems without the help of the internet have developed methods that do not include google and stack overflow.
Anyway, I do ask for help. I've studied destructive forces in software development teams, my current hypothesis is that ego is behind them all.