110,547
社区成员
发帖
与我相关
我的任务
分享
private AutoResetEvent event = new AutoResetEvent(false);
private void Recursion(int value)
{
if(event.WaitOne(0, false)) // 如果event被置位则停止
return;
// 执行递归算法
Thread.Sleep(1000);
value++;
if(value<1000)
Recursion(value);
}
private void threadProc()
{
Recursion(0); // 调用递归函数
}
private void btnStart_Click(object sender, EventArgs e)
{
event.Reset();
Thread thread = new Thread(new ThreadStart(Recursion));
thread .Start();
}
private void btnStop_Click(object sender, EventArgs e)
{
event.Set(); // 设置event通知线程停止
}