什么可能导致从Windows服务执行进程比从命令行(admin)运行慢?

时间:2009-11-03 21:02:38

标签: c# windows-services

什么可能导致从Windows服务执行进程比从命令行运行慢? 当我从具有管理员权限的命令行执行进程(另一个exe)时,它比Windows服务执行相同进程快四倍。可能导致这种情况的原因。 目录和文件的权限对于该帐户是可以的。它运行成功,慢了4倍。需要有关如何调查以找出问题的想法。

我们一直在使用sysinternals processexplorer而没有看到任何内容。

进度选项卡在哪里可以修改“优先级”以查看是否导致问题?

3 个答案:

答案 0 :(得分:2)

在Windows中,后台服务的优先级可能较低,可以在计算机属性的高级选项卡中进行配置。

答案 1 :(得分:2)

假设两个应用程序的优先级相同,您需要profile the app并查看哪些呼叫占用的时间最多。这至少应该给你足够详细的信息回来询问“为什么这个特定的电话运行缓慢”,而不是“为什么我的应用程序运行缓慢”。

答案 2 :(得分:1)

从www.sysinternals.com下载sysinternals进程监控工具,然后开始跟踪应用程序,它将显示进程在注册表/文件访问方面正在做什么,并可能会显示延迟时要查看的内容正在发生。

如果您有调试符号,它还可以在正在调用的dll / app中为您提供函数调用名称,但即使知道延迟发生时正在发生什么以及正在使用哪些dll,用户模式或内核给出你是一个很好的指示从哪里开始。