1. A method for facilitating network communications from one or more independent execution threads by a dedicated worker thread, comprising the steps of: storing a request object by an execution thread in a data structure, the request object describing a request for a network operation and having state information; retrieving the request object from the data structure by the worker thread; modifying the request object to indicate a change of state; sending a non-blocking function call to a networking module; sending the request object to the networking module; and executing the non-blocking function call.