首页 新闻 会员 周边

C# 如何暂停backgroundwork ?

1
悬赏园豆:40 [已解决问题] 解决于 2018-07-25 18:49
 private ManualResetEvent manualReset = new ManualResetEvent(true);

        private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
        {
            manualReset.WaitOne();

//下面是一些需要执行的操作
}

  private void Form1_KeyDown(object sender, KeyEventArgs e)
        {


            // 组合键
            if (e.KeyCode == Keys.Z && e.Modifiers == Keys.Control)
            {

                manualReset.Reset();
              

            }
            else if (e.KeyCode == Keys.X && e.Modifiers == Keys.Control)
            {
                manualReset.Set();
            }
        }

我要怎样通过快捷键暂停程序继续执行呢?我写的代码不对,希望大牛指点

柚子家的橘子哟的主页 柚子家的橘子哟 | 初学一级 | 园豆:4
提问于:2018-07-03 15:12
< >
分享
最佳答案
0

头像很帅。

言归正传,可以这么做。

  1. 把BackgroundWorker.WorkerSupportsCancellation属性的值设置为true
  2. 接着调用CancelAsync()方法
  3. 检查BackgroundWorker.CancellationPending 属性,判断后台异步操作是否被真正取消。
收获园豆:40
Arthurian | 小虾三级 |园豆:1123 | 2018-07-03 16:41

x谢谢哦

柚子家的橘子哟 | 园豆:4 (初学一级) | 2018-07-05 17:25
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册