gpt4 book ai didi

c# - 分析 IO 绑定(bind) C# 应用程序

转载 作者:行者123 更新时间:2023-11-30 15:44:00 24 4
gpt4 key购买 nike

我如何分析一个执行大量 IO 的 C# 应用

我尝试过 ANTS 和 JetBrains,但它们似乎不能很好地处理 IO 绑定(bind)应用程序,而是报告 CPU 密集型任务

最佳答案

Visual Studio 2010 中的 Concurrency Visualizer 可以帮助识别存在重大 IO 瓶颈的区域。

“线程 View ”显示了您应用程序中所有线程的时间轴,并用颜色表示不同类型的事件。线程在 IO(例如文件、网络等)上阻塞时将显示紫色。如果单击这些段之一,您将看到线程在 IO 上阻塞的调用堆栈。在下图中,选择了同步(红色)段,堆栈显示在“当前堆栈”面板中。

还有代表您的每个磁盘的 channel ,它们将显示读/写,点击其中一个片段将显示该片段代表的文件操作。

例如,

Concurrency Visualizer Threads View

时间线下方是许多报告,您可以通过单击“可见时间线配置文件”中的项目来访问这些报告。他们将向您显示可见时间线内各种事件的聚合堆栈,因此您可以看到大部分 IO 阻塞发生的堆栈。同样,“文件操作”报告将在可见时间线中向您显示读取/写入。

“文件操作”报告如下所示:

Concurrency Visualizer File Operations

有关更多信息,请查看 team blog , MSDN或 Hazim Shafi 的 blogMSDN magazine article .

关于c# - 分析 IO 绑定(bind) C# 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6401874/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com