I have two URLConnections opened at the same time in my java applet. One waits up to 1 minute for a webpage to return, while the other gets a web page and returns almost instantly. I find that after the applet has made several requests for a web page it deadlocks. The deadlock appears to be caused by the long waiting URLConnection blocking in the getInputStream function which stops the other quick URL connections from being created. Does anyone know how a url connection is implemented lower down. Is a deadlock occuring? Is URLConnection sharing one socket or stream or something?