C# 线程

线程

关于Thread类

C# 线程_第1张图片

线程的举例:

 public partial class Form1 : Form
{
  Thread whileThread;
  public Form1()
  {}
  public void PaintBubbleSort()//线程要执行的函数
  {
    //......
    whileThread.Abort();//终止线程
  }
  private void 测试ToolStripMenuItem_Click(object sender, EventArgs e)
  {
     ThreadStart startThread = new ThreadStart(PaintBubbleSort);//利用委托将线程要执行的函数处理成参数
     whileThread = new Thread(startThread);//将委托的参数传给线程
     whileThread.Start();//开始线程
  }
}


线程的状态:

C# 线程_第2张图片

C# 线程_第3张图片

可以使用IsAlive只读属性判断线程是否在运行:

if(whileThread.IsAlive)//其中whileThread是一个线程实例,当线程对象的IsAlive属性为true时,说明线程依然运行,可能处在Running、Suspended等状态
{
  //线程正在运行
}
else
{
  //线程已被终止
}
还可以通过以下方法获知线程的状态:

label1.Text = whileThread.ThreadState.ToString();  //其中whileThread.ThreadState是线程此时的状态




你可能感兴趣的:(C#)