The Blender game engine does not move into the next frame if all the active scripts have not yet finished.
Say we have an HTTP script in the game. The script retrieves data from a server. I presume the retrieval process cannot be split into multiple small processes.
I know only of the subprocess module's ability to work outside the bge, but on Windows a new Blender window pops up every time the subprocess module is used to start any new Python script.