0
asp.net coreどのようにただ1つのアクションrequesttimeoutを遅らせるか? 私はwebconfigを設定することができます: これはグローバルであり、1つのアクションだけを遅延させたいと思います。asp.net coreどのように1つのアクションrequesttimeoutを遅らせるか?
asp.net coreどのようにただ1つのアクションrequesttimeoutを遅らせるか? 私はwebconfigを設定することができます: これはグローバルであり、1つのアクションだけを遅延させたいと思います。asp.net coreどのように1つのアクションrequesttimeoutを遅らせるか?
あなたは、コントローラのメソッドにタイムアウトを自分で実装することがあります。
public async Task<IActionResult> DoNotHang()
{
var timeout = TimeSpan.FromMinutes(1);
var operation = LongOperationAsync(); // no "await" here!
if (await Task.WhenAny(operation, Task.Delay(timeout)) == operation)
{
var result = await operation; // obtain result (if needed)
return Ok(result == null ? "Null" : "Not null");
}
else
{
return Ok("Timed out (but still working, not cancelled)");
}
}
は、タイムアウトで待っ-INGの1が完了すると、「その他」のタスクの取り消しを含めての詳細についてはAsynchronously wait for Task<T> to complete with timeoutを参照してください。