В общем имеется пост запрос: private string post(string URL,string Post) { String secondStepForm = Post; HttpWebRequest request = (HttpWebRequest)WebRequest.Create(URL); request.UserAgent = "Opera/9.80"; request.Method = "POST"; request.ContentType = "application/x-www-form-urlencoded"; byte[] EncodedPostParams = Encoding.ASCII.GetBytes(secondStepForm); request.ContentLength = EncodedPostParams.Length; request.GetRequestStream().Write(EncodedPostParams, 0, EncodedPostParams.Length); request.GetRequestStream().Close(); HttpWebResponse response = (HttpWebResponse)request.GetResponse(); string html = new StreamReader(response.GetResponseStream(), Encoding.UTF8).ReadToEnd(); } Имеется компонент backgroundworker1 Как вставить процедуру post в Do_Work Воркера, чтобы каждый post - запрос выполнялся параллельно??? Я пробовал - но пишет что вызов осуществляется не из того потока в котором он создан
private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e) { this.post(url, pack); } Мне надо чтобы отправка пост-запросов шла всегда в отдельном потоке
Из метода DoWorkEventHandler нельзя обращаться к элементам формы напрямую, для этого необходимо использовать Invoke, BeginInvoke. Если нужно просто посылать запросы то можно воспользоваться ThreadPool(или Thread), что то типа такого тут кто-то писал: