为了账号安全,请及时绑定邮箱和手机立即绑定

C#使用其他参数重新启动线程

C#使用其他参数重新启动线程

C#
喵喔喔 2021-05-05 21:58:39
我想在某个用户事件上启动一个后台线程,如果变量在传入时间和检查时间之间发生变化,我将在其中等待/睡眠10秒钟以执行某项操作。但是,在那10秒钟内,同一用户事件可能会重复,我想中断并重置线程以使用新变量,然后从10秒钟开始。例如,private static int index = 0;private static Thread myThread = null;if(myThread != null && myThread.IsAlive) {         // need to 'restart' the thread with updated index         /* Suspend? Resume? */    } else {         // create a new thread and start countdown         myThread = new Thread(new ThreadStart( some_Thread(index) ));         myThread.Start();    }我读到suspend()和resume()都是过时的,并且已经阅读了有关Auto / ManualResetEvent的一些文章,但是它们并不是我想要的。它可能更接近Abort(),然后更接近Start()一个新的,但显然这是不明智的。那么有什么建议如何用一个静态线程句柄来实现呢?同样,10秒钟的“睡眠”必须是可中断的,此后,该线程是可丢弃的或可重新启动的。谢谢!
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 183 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信