c#线程控制的示例分析

  介绍

这篇文章主要介绍c#线程控制的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

<强>方案一:

调用线程控制方法。启动:Thread.Start();停止:Thread.Abort();暂停:Thread.Suspend();继续:Thread.Resume ();

 C #线程控制的示例分析

,,,,,,,,private  void  btn_Start_Click (object ,发送方,EventArgs  e)   ,,,,,,,{   ,,,,,,,,,,,mThread.Start();,,//,开始,,,,,,,,}private  void  btn_Stop_Click (object ,发送方,EventArgs  e)   ,,,,,,,{   ,,,,,,,,,,,mThread.Abort();,,//,终止,,,,,,,,}private  void  btn_Suspend_Click (object ,发送方,EventArgs  e)   ,,,,,,,{   ,,,,,,,,,,,mThread.Suspend();,,//,暂停,,,,,,,,}private  void  btn_Resume_Click (object ,发送方,EventArgs  e)   ,,,,,,,{   ,,,,,,,,,,,mThread.Resume();,,//,继续}

线程定义为:

,,,,,,,,,,,,mThread =, new 线程((),=在{{for 尝试(int  j =, 0;, j  & lt;, 20;, j + +)   ,,,,,,,,,,,,,,,,,,,{int  vSum =, 0; this.textBox1.Text  +=,“——→“; for  (int 小姐:=,0;,小姐:& lt;, 100000000;,我+ +)   ,,,,,,,,,,,,,,,,,,,,,,,{if (小姐:%,2,==,0)   ,,,,,,,,,,,,,,,,,,,,,,,,,,,{   ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,vSum  +=,我;   ,,,,,,,,,,,,,,,,,,,,,,,,,,,其他}{   ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,vSum  -=,我;   ,,,,,,,,,,,,,,,,,,,,,,,,,,,}   ,,,,,,,,,,,,,,,,,,,,,,,}this.textBox1.Text  +=, string.Format(“{0},=祝辞,vSum =, {1} \ r \ n",, DateTime.Now.ToString (),, vSum);   ,,,,,,,,,,,,,,,,,,,,,,,thread . sleep (1000);   ,,,,,,,,,,,,,,,,,,,}   ,,,,,,,,,,,,,,,}catch  (ThreadAbortException 交货)   ,,,,,,,,,,,,,,,{   ,,,,,,,,,,,,,,,,,,,Console.WriteLine (“ThreadAbortException: {0},,, ex.Message);   ,,,,,,,,,,,,,,,}   ,,,,,,,,,,,});

值得注意的是:通过Thread.Abort()停下来的线程(或自行运行结束的线程),都无法直接通过Thread.Start()方法再次启动,必须重新创建一个线程启动。

所以,“开始按钮”事件应为:

,,,,,,,,private  void  btn_Start_Click (object ,发送方,EventArgs  e)   ,,,,,,,{//,定义线程mThread =, new 线程((),=祝辞,//,Lambda 表达式,,,,,,,,,,,,{尝试{for  (int  j =, 0;, j  & lt;, 20;, j + +)   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

c#线程控制的示例分析