如何在x秒内延迟HTTP响应?

Mat*_*ley 2 c# asp.net multithreading http

我不会深入了解为什么我需要它的无聊细节,它是内部分析包的一部分,但我的目标是创建一个在2秒后返回重定向的ASP.NET页面.

我看到的问题是使用Thread.Sleep(2000);将阻止我的一个ASP.NET ThreadPool线程.据我所知,这非常浪费,因为线程创建并不便宜,我需要这台服务器来处理尽可能多的可能的同时连接.

那么,在至少 2秒后让HTTP GET返回页面的最佳方法是什么(超过2秒没问题,它就不能用了).

    protected void Page_Load(object sender, EventArgs e)
    {
        Thread.Sleep(2000);
        Response.Redirect(RedirectUri);
    }
Run Code Online (Sandbox Code Playgroud)

编辑

我应该澄清一下,请求的页面实际上是作为图像请求的,因此无法返回HTML.它会像这样使用:

    <img src="http://hostname/record.aspx"/>
Run Code Online (Sandbox Code Playgroud)

重定向到实际图像需要2秒钟.

Ica*_*rus 5

您可以在标记本身上执行此操作,您可以执行以下操作:

<head>
   <meta http-equiv="refresh" content="3; URL=otherpage.aspx">
</head>
Run Code Online (Sandbox Code Playgroud)