zoukankan      html  css  js  c++  java
  • 带参数线程,不带参数线程

    private void button1_Click(object sender, EventArgs e)
            {
                //带参数
                ThreadParam param = new ThreadParam();
                param.t_i = 3;  //定义循环次数
                Thread _WriteThread = new Thread(new ParameterizedThreadStart(doThread));   
                _WriteThread.Start(param);   //启动新线程,不占用主界面线程时间
                textBox1.Text = "演示";
            }
    
            private void doThread(object threadData)
            {
                ThreadParam param = (ThreadParam)threadData;
                for (int i = 0; i < param.t_i; i++)
                {
                    //循环体,例如暂停1s,会看到效果,先显示“演示”后显示循环次数
                    System.Threading.Thread.Sleep(1000);
                }
                //循环完毕后赋值
               if (this.IsDisposed) return;
               this.Invoke(new EventHandler(delegate(object s1, EventArgs e1)
               {
                   textBox1.Text = param.t_i.ToString();
    
               }));
     
    
            }
    
            private void button2_Click(object sender, EventArgs e)
            {
                //不带参数
                Thread _WriteThread = new Thread(new ThreadStart(doThreadN));
                _WriteThread.Start();   //启动新线程,不占用主界面线程时间
                textBox1.Text = "演示";
            }
    
            private void doThreadN()
            {
               
                for (int i = 0; i < 3; i++)
                {
                    //循环体,例如暂停1s,会看到效果,先显示“演示”后显示循环次数
                    System.Threading.Thread.Sleep(1000);
                }
                //循环完毕后赋值
                if (this.IsDisposed) return;
                this.Invoke(new EventHandler(delegate(object s1, EventArgs e1)
                {
                    textBox1.Text = "3";
    
                }));
    
    
            }
    
        }
    
         class ThreadParam
        {  
            public int t_i;
         
        }
    

      

  • 相关阅读:
    docker run 参数含义
    java——数组队列 ArrayQueue
    java——数组栈 ArrayStack
    java——时间复杂度、动态数组
    java——异常类、异常捕获、finally、异常抛出、自定义异常
    java——变量
    java——虚拟机、线程
    java——内部类
    java——object类
    java——抽象类、接口、二者区别
  • 原文地址:https://www.cnblogs.com/xiaochun126/p/4158120.html
Copyright © 2011-2022 走看看