首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Visual Studio 2008中的“查找和替换”速度很慢

Visual Studio 2008中的“查找和替换”速度很慢
EN

Stack Overflow用户
提问于 2009-05-05 19:22:16
回答 4查看 2.2K关注 0票数 3

我有一个解决方案,它只有一个项目,大约有30个类文件。如果我使用“查找和替换”来搜索当前打开的文档,它的速度非常快,但如果我尝试搜索整个解决方案,则每个结果之间似乎需要3-4秒的时间。即使有我能看到的一个接一个的比赛,仍然有3-4秒的滞后。硬盘什么也不做,CPU空闲--是什么导致了这种停顿?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2009-05-05 19:58:29

使用“在文件中查找”,因为它的速度要快得多。

票数 7
EN

Stack Overflow用户

发布于 2010-07-14 05:19:42

我通过使用Microsoft Sysinternals tool ProcMon.exe找到了答案。在VS2008中使用Ctrl-Shift-H搜索非常慢;这是在所有文件中查找,包括整个解决方案,查找选项字段“查看这些文件类型”文本框为空。

我通过ProcMon.exe发现,它为DevEnv.exe进程显示它正在搜索资源文件(包含的DLL、JPG、GIF等)。=(哦。我决定将“查看这些文件类型”更改为只针对长文本过滤器".vb;.resx;*.xsd“等进行处理,瞧,它很快。嗯,这看起来有点奇怪,它会搜索不能搜索的文件(实际上)。=(

设置了这些过滤文件类型后,"devenv.exe“的结果要少得多,而且速度更快。

下面是重现的完整步骤,所以如果您有其他需要使用此过程的情况,请随时遵循。

  1. 下载并运行ProcMon.exe,在ProcMone.exe中禁用捕获(Ctrl-E)
  2. ,添加一个新的包含过滤器,其中"ProcessName is devenv.exe",这有助于从机器中清除任何无关的活动,并隔离VS环境。保留所有其他排除项。
  3. 准备完整的解决方案搜索,并替换为项目中的大量文件和DLL(当然应该从项目中排除BIN中的DLL)
  4. 在ProcMan.exe中,开始捕获(Ctrl-E)。将不会显示任何内容,因为筛选器已缩小到VS activity。在VS中,要查找下一个,和/或在搜索完成后执行replace
  5. ,请在结果中停止筛选器,并查看正在打开和查询的文件类型。

最后,确保“查看这些文件类型”与您要搜索的项目完全匹配。有没有人对排除GIF、PNG、JPG和其他不需要搜索的文件有什么想法?可能使用正则表达式!?谁想提供一些反馈,让我们都能从更好的搜索和替换体验中受益?

啊,那好多了,我不需要等5-8秒就能找到下一个匹配。

票数 3
EN

Stack Overflow用户

发布于 2009-05-05 19:28:06

检查路径与搜索。这可能是导致大量时间的顶级目录。如果是这样--缩小要搜索的目录范围。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/826506

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档