zoukankan      html  css  js  c++  java
  • C#一个线程操作另一个线程的控件的方法

    Using System.Threading;
    Thread thread1;
    Thread thread2;
    Delegate void AppendStringDelegate(string str);
    AppendStringDelegate appendStringDelegate;
    Public Form1()
    {
    InitializeComponent();
    appendStringDelegate=new AppendStringDelegate(AppendString);
    }
    Private void AppendString(string str)
    {
    richTextBox1.Text+=str;
    }
    Private void Method1()
    {
    While(true)
    {
    Thread.Sleep(100);
    richTexBox1.Invoke(appendStringDelegate,”a”);
    }
    }
    Private void Method2()
    {
    While(true)
    {
    while(true)
    {
    Thread.Sleep(100);
    richTextBox1.Invoke(appendStringDelegate,”b”);
    }
    }
    //启动线程
    Private void buttonStart_Click(object sender, EventArgs e)
    {
    richTextBox1.Text=””;
    thread1=new Thread(new ThreadStart(Method1));
    thread2=new Thread(new ThreadStart(Method2));
    thread1.Start();
    thread2.Start();
    }
    //终止线程
    Private void buttonStop_Click(object sender,EventArg e)
    {
    thread1.Abort();
    thread2.Join();
    thread2.Abort();
    thread2.Join();
    MessageBox.Show(“线程1,2终止成功”);
    }

  • 相关阅读:
    I
    H
    装箱问题
    E
    Oracle创建视图(View)
    (转)Navicat Premium 12.1.8.0安装与激活
    bigdecimal 保留小数位
    用命令修改Oracle数据库密码
    sql中exists,not exists的用法
    在Orcl中通过SQL语句修改创建表
  • 原文地址:https://www.cnblogs.com/jordan2009/p/1628571.html
Copyright © 2011-2022 走看看