http://dflying.cnblogs.com/archive/2006/05/17/Atlas_and_Web_Service__Error_Timeout_and_User_Abort_Handling.html