代码之家  ›  专栏  ›  技术社区  ›  Andrew

VB.NET 2008 IDE挂起-编辑代码时,msvb7.dll占用100%CPU

  •  1
  • Andrew  · 技术社区  · 14 年前

    编辑1:已卸载并重新安装 编辑2:同样的问题。真的吗?对。

    我有一个问题与msvb7.dll吃50%+在我的双核系统的CPU。这通常持续10-30秒左右,在此期间IDE没有响应。

    当我在文本编辑器中做任何事情时,都会发生这种情况,只需向函数添加空行,然后删除它们,就可以复制这种情况。或者粘贴一些代码。或者…洛萨的东西。

    • 已安装SP1
    • 我已经安装了devexpress的refactor/coderash、components和codeit.right,但是已经删除了所有3个。
      • (我已经安装了最新版本的Refactor Pro!(9.3.4),可能是前一天)
    • 我试过VS.NET修复。
    • 有一个kb引用了vb中的一些cpu破坏,但它包含在sp1中

    也:

    • 该解决方案由大约30个vb项目和2个c项目组成
    • 8其他开发人员对此没有任何问题(或者至少不是相同的问题,我们都有它们)
    • 已经完成了从TFS的干净获取
    • 项目构建正确,甚至可以调试。
    • 这似乎不发生在真正的小解决方案上,但也许它确实发生了,而且它很快就消失了。

    有什么线索可以证明这是什么原因,或者如何解决?我真的不想再浪费一天的时间去卸载、重新安装和修补等等。

    编辑 看看这两个修补程序。申请957912,第一个

    KB957912: Updates for Visual Studio 2008 SP1 debugging and breakpoints

    KB967631: When you debug in Visual Studio 2008 Service Pack 1, more breakpoints are generated unexpectedly, or the IDE crashes or becomes unresponsive for about 15 seconds

    下面是当 msvb7.dll 正在搅动。

    --- title in process explorer [threads] tab for process --------
    cpu:49.28%  cswitch delta: 300 to 3500  startaddress: [msvb7.dll+0x4218c]
        msvb7.dll version: 9.0.30729.1
    --- actual stack trace -------
    ntkrnlpa.exe!KiUnexpectedInterrupt+0x121
    ntkrnlpa.exe!ZwYieldExecution+0x1c56
    ntkrnlpa.exe!KiDispatchInterrupt+0x72e
    NDIS.sys!NdisFreeToBlockPool+0x15e1
    // shortened stack trace.  all of these are from msvb7, 
    msvb7.dll+0x46ce7 <- 0x2676a <- 0x2698e <- 0x38031 <- 0x2659f <- 0x26644
    msvb7.dll+0x25f29 <- 0x2ac7a <- 0x27522 <- 0x274a0 <- 0x2b5ce <- 0x2b6e4
    msvb7.dll+0x67d0a <- 0x68551 <- 0x6817b <- 0x681f0 <- 0x67c38 <- 0x65fa8
    msvb7.dll+0x666c6 <- 0x6672c <- 0x6673d <- 0x6677c <- 0x667b4 <- 0x63c77
    msvb7.dll+0x63e97 <- 0x42c3a <- 0x42bc1 <- 0x41bd7
    kernel32.dll!GetModuleFileNameA+0x1b4
    

    这是“帮助->关于”中“复制信息”中的内容列表,缩短为合理的长度。

    Microsoft Visual Studio 2008 | Version 9.0.30729.1 SP
    Microsoft Visual Studio 2008 Professional Edition - ENU Service Pack 1 (KB945140)   KB945140
    Microsoft .NET Framework | Version 3.5 SP1
    Microsoft Visual Basic 2008      
    Microsoft Visual C# 2008   
    Microsoft Visual F# for Visual Studio 2008   
    Microsoft Visual Studio 2008 Team Explorer | Version 9.0.30729.1    
    Microsoft Visual Studio 2008 Tools for Office   
    Microsoft Visual Web Developer 2008  
    Hotfix for Microsoft Visual Studio 2008 Professional Edition - ENU 
      KB944899, KB945282, KB946040, KB946308, KB946344, KB946581, KB947171
      KB947173, KB947180, KB947540, KB947789, KB948127, KB946260, KB946458, KB948816
    
    Microsoft Recipe Framework Package   8.0        
    Process Editor WIT Designer   1.4.0.0
    Process Editor for Microsoft Visual Studio Team Foundation Server, Version 1.4.0.0    
    tangible T4 Editor   9.0
    tangible T4 Text Template Editor - T4 Editor    
    tangibleprojectsystem   1.0  
    Team Foundation Server Power Tools   October 2008   
    SQL Prompt 4.0 (disabled)
    
    3 回复  |  直到 14 年前
        1
  •  1
  •   AMissico    14 年前

    使用 过程监视器 ( http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx )并跟踪visual studio显示此行为时的活动。我以前做过很多次,都很成功。

    我实际上是在启动时监视excel,以确定为什么excel与vsto加载项有问题。原来excel也试图加载以前的版本,所以我加载了两个外接程序。我不到一分钟就知道了。没有 进程管理 我可能已经排除故障好几个小时或几天了。

        2
  •  1
  •   Joel Coehoorn    14 年前

    当你在一个类中以特定的方式有一个循环引用时,我看到了类似的情况。它试图显示intellisense,最后在一个无限循环中试图构建列表。不过,我现在不记得具体情况了。

        3
  •  0
  •   Andrew    14 年前

    放弃和抹去与2008年和所有支持软件的对比。正在重新安装。调试是很有趣的,但是我今天早上不得不取消一个会议,因为我什么都做不到。

    如果我在微软找到一份工作,我会进一步调查…但是这个太难了 我和我多年来在.net上的调试技巧

    呸!重新安装,它仍然是坏的!我可能真的要解决这个问题:(

    @谢谢,我完全忘记了。

    问题出在解析线程的某个地方,我无法找出它做错了什么。我看到了很多fs活动,但没有什么可以被我认为是wierd。它只会生成临时文件(所有的名字都一样?)只是看起来它每次都在慢慢地做每件事。我不知道是什么 应该 不过,看起来像。

    启动很好,这主要发生在我编辑文件的时候。看起来,它只是开始咀嚼智能感知,但为什么需要这么长时间呢?