在Azure分析器中,AWAIT_TIME到底是什么意思?

10

我正在查看我最慢请求之一的性能概要,发现 AWAIT_TIME 超过 6 秒,但无法获取更多信息。如何确定进程正在“等待”什么?

剖析“热路径”的部分


你找到了什么吗? - Emixam23
1个回答

8
Azure文档中得知:

等待(AWAIT_TIME) AWAIT_TIME 表示代码正在等待另一个任务完成, 通常发生在C# 'await'语句。当代码执行C#'await'时,线程将解开并返回控制权到线程池,并且没有任何线程被阻止等待“await”完成。但是,逻辑上执行了await的线程处于“阻塞”状态,等待操作完成。 AWAIT_TIME 表示等待任务完成的阻塞时间。

阻塞时间 BLOCKED_TIME 表示代码正在等待另一个资源可用,例如等待同步对象、等待线程可用或等待请求完成。
因此,它正在等待必要的内容才能继续处理。我们在文件上传时遇到了长时间的 AWAIT_TIME 问题,最后发现请求正在等待请求流被读取 (ReadAsMultiPartAsync() )。如果您查看 RecASPRequest_RtlUserThreadStart 中的代码,您可能会找到罪魁祸首...


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接