0

我分析了一个应用程序。基本上每个线程都从网络共享读取 XML 文件,反序列化对象,记录到本地文件,异步记录到数据库并调用 Web 服务。24 核机器上的线程数量约为 14。

Redgate 分析器向我显示多线程应用程序 70% 的时间都在等待同步。这是一个令人震惊的信号还是意料之中的?此外,如果您可以就如何分析此类分析器日志提供建议,请分享您的知识。

探查器日志

调用图

4

1 回答 1

1

等待同步只是意味着一个线程在等待另一个线程完成操作时被挂起。您是否应该担心这一点取决于您预计该线程上的操作需要多长时间才能完成。

例如,如果堆栈指示读/写,那么它可能只是意味着磁盘很慢。也许您可以通过更改代码来最小化它;也许它只是一个不稳定的网络或磁盘驱动器。

于 2013-01-29T10:55:11.263 回答