>a solution that runs each HTTP request in a thread will be unacceptable

Fair enough. I saw "_beginthread" in winhttp.c and assumed it would be ok to use it. I'll think some more.