I have a webform that on PageLoad registers an PageAsyncTask.  In that task, I make a call out to a website and upon completion I add a cookie.  Intermittently I seem to get an error, "Server cannot modify cookies after HTTP headers have been sent".  I've been unable to reproduce this locally, but it's happening enough in production that it's an issue for users.  Below is the stack trace.
I've dug a bit, but I've been unable to find any information on this.  Any thoughts as to what's happening, and what I can do to prevent this?  
Stack Trace at System.Web.HttpResponse.BeforeCookieCollectionChange() at System.Web.HttpCookieCollection.Add(HttpCookie cookie) at *.*.GenerateCookiesForClient(HttpResponse response, String accountKey, String accessToken, String containerSelector) at *.<InitializePageAsync>d__9.MoveNext() --- End of stack trace from previous location where exception was thrown - ...

Go to the complete details ...