恭喜您获得阿里云幸运券 建站,有个好记的域名非常重要!
  • By xoyozo 转载请注明出处
  • Posted 2020/8/1 8:16:52

执行超时则终止进程

protected void Page_Load(object sender, EventArgs e)
{
    int a = 1;

    Task.Run(() =>
    {
        a = PlusOne(1);
    }).Wait(3000);

    b = a;
}

private static int PlusOne(int n)
{
    System.Threading.Thread.Sleep(4000);
    return n + 1;
}

上例中使用 Task.Run 创建一个新线程调用 PlusOne 方法,并设置超时时间为 3000 毫秒。若方法 PlusOne 在 3 秒内完成,则变量 a 加 1 成功,否则 a 仍为原值。

注意:Wait 方法作用是在指定时间内等待 Task.Run 执行完毕,并不会在超时后终止该线程。

谢谢赞赏

相关文章

大家正在看

最新发布