多线程怎么用?只能用在winform中吗?能在类中使用吗?
最好有例子,谢谢...

解决方案 »

  1.   


    我在类中使用,怎么没效果呢?在winform中可以
      

  2.   

    http://www.cnblogs.com/idior/articles/864806.html
     
      

  3.   

    代码如下:   class FundInfoComponent : ComponentBase {
            private Thread th;
            public override void GetSource() {
                GetHtmlContent();
                var beforeprocessContent = content;
                saveorigdata = beforeprocessContent;
                fAnalyzer.GetTargetData(beforeprocessContent);
            }        string content = string.Empty;
            ArrayList arrUrl = new ArrayList();
            private void GetHtmlContent()
            {
                for (int i = 0; i < 45; i++)
                {
                    var url =
                        "http://...";
                    arrUrl.Add(url);
                }            th = new Thread(OperateData);
                th.Start();
            }        public void OperateData()
            {
                for (int i = 0; i < arrUrl.Count; i++)
                {
                    var request = (HttpWebRequest)WebRequest.Create(arrUrl[i].ToString());
                    var response = (HttpWebResponse)request.GetResponse();
                    var resStream = response.GetResponseStream();
                    if (resStream != null)
                    {
                        var reader = new StreamReader(resStream, Encoding.UTF8);
                        content += reader.ReadToEnd();
                        reader.Close();
                    }
                    if (resStream != null) resStream.Close();
                }
            }
        }
      

  4.   

    不限于winform,取决于需求与应用场景
      

  5.   

    本来OperateData()的处理方法是写在for循环的,可是容易假死,所以就想用多线程,但是这样写没效果...