如何向线程传递参数

来源:互联网 发布:百度的石榴算法 编辑:程序博客网 时间:2024/05/01 00:17

在线程的使用中ThreadStart()不能调用带参数的方法,如果想传入参数必须使用类来传递

    public class test
    {
        public test(Label label1s,ProgressBar progressBar1s,ProgressBar progressBar2s)
        {
            label1 = label1s;
            progressBar1 = progressBar1s;
            progressBar2 = progressBar2s;
        }
        Label label1;
        ProgressBar progressBar1;
        ProgressBar progressBar2;
        public  void sk()
        {
            try
            {

                for (int i = 0; i <= 1000; i++)
                {
                    label1.Text = i.ToString();
                    progressBar1.Value = i;
                    for (int j = 0; j <= 1000; j++)
                    {
                        progressBar2.Value = j;
                    }
                }
            }
            catch (Exception err)
            {
                MessageBox.Show(err.Message);
            }
        }
    }

调用:

Thread ss = new Thread(new ThreadStart(new test(this.label1 ,this.progressBar1 ,this.progressBar2 ).sk ));
ss.Start();

 
原创粉丝点击