Visual Studio 2010 性能分析能否与用 C# 编写的 Windows 服务一起工作
Posted
技术标签:
【中文标题】Visual Studio 2010 性能分析能否与用 C# 编写的 Windows 服务一起工作【英文标题】:Can Visual Studio 2010 Performance Analysis work with Windows Service written in C# 【发布时间】:2011-05-04 20:11:42 【问题描述】:我想使用内存分析器来确定在一个相当复杂的用 C# 编写的 Windows 服务中是否有内存链接,该服务有大量正在运行的线程。如果我循环服务中的代码不断重复相同的操作,它的内存占用会不断增长。
我很失望地发现 Visual Studio 2010 中内置的性能分析工具无法与 Windows 服务一起使用(或者至少它似乎无法与 Windows 服务一起使用)。
有人知道让 VS 2010 工具与 Windows 服务一起工作的方法吗?
【问题讨论】:
【参考方案1】:我知道的唯一解决方法是重构您的服务,使其能够基于命令行开关作为应用程序和 Windows 服务运行 - 请参阅 here 以获取详细的解决方案。这样一来,您现在可以在作为常规应用程序运行时应用性能分析,并且在完成后无需修改代码库即可作为 Windows 服务运行。
【讨论】:
谢谢-您的解决方案很有意义-尽管我最终改用了ANTS内存分析器-这是一个更简单的解决方案,绝对值得购买。非常令人沮丧的是,如果不重构代码,微软的解决方案将无法用于服务:-(以上是关于Visual Studio 2010 性能分析能否与用 C# 编写的 Windows 服务一起工作的主要内容,如果未能解决你的问题,请参考以下文章
Visual Studio 数据库项目能否为每个已更改的对象创建单独的差异脚本?
VisualHg和Visual Studio 2010性能问题
分析报告后,Visual Studio 2010 在分析时崩溃