偶尔,但相当频繁地,VS 2012 会锁定一个对话框,上面写着“等待后台操作完成”。例如,这可能发生在普通的旧代码编辑期间,而不是显式调用任何 IDE 命令时。
是什么原因造成的,对此我能做些什么吗?
我正在运行 ReSharper 7,而且我不是唯一一个遇到这种情况的人。
偶尔,但相当频繁地,VS 2012 会锁定一个对话框,上面写着“等待后台操作完成”。例如,这可能发生在普通的旧代码编辑期间,而不是显式调用任何 IDE 命令时。
是什么原因造成的,对此我能做些什么吗?
我正在运行 ReSharper 7,而且我不是唯一一个遇到这种情况的人。
我遇到了同样的问题,尤其是在 cshtml 页面中。我找到了这个页面:https://devblogs.microsoft.com/aspnet/visual-studio-11-beta-razor-editor-issue-workaround建议将“工具”>“选项”>“文本编辑器”>“HTML”>“选项卡”中的缩进选项更改为Smart而不是Block。在我的情况下,它已经设置为Smart并将其更改回Block解决了问题。
更新:我错了,这并没有修复对话,它只是延迟了它,直到我复制或粘贴。最终对我有用的是转到Tools > Import and Export Settings... > Reset all settings。
可能相关的问题:Visual Studios 2010 - Asp.net MVC 4 Beta - 粘贴时的长时间延迟和频繁的崩溃
这是一个非常通用的诊断。它由 COM 触发,在 Visual Studio 中大量用于实现可扩展性。底层触发器是 IMessageFilter 接口。当 COM 将方法调用编组到另一个线程并且该调用在 60 秒内未完成时,就会发生触发器。
实际通知没有什么价值,它告诉你一些你已经知道的事情。到 60 秒过去时,您通常已经注意到事情并不顺利。从一点有用的知识来看,Visual Studio 实际上并没有完全死掉。然而,调用必须在 VS 再次可用之前完成。您无能为力,只能轻拍脚并等待。
此问题几乎总是由加载项引起的。Resharper 无疑是一个不错的候选人。您可以通过逐个禁用加载项直到问题消失来找到麻烦制造者。这是新版本 Visual Studio 中常见的问题,加载项供应商需要一段时间才能解决错误和挂断问题。请与供应商联系以获得支持,并通常寻找可能解决问题的更新。
删除解决方案“suo”文件对我有用。
我遇到了同样的问题,在我的情况下是 DevExpress。
每次我进行复制或剪切操作时,它似乎都会挂起 Visual Studio,并显示以下消息:
“等待后台操作完成”。
事实证明,它实际上是在后台执行一项一次性任务,而且确实需要一段时间才能完成(超过 5 分钟)。
也许如果我正常等待,它可能会消失,但最终修复它的是打开工具箱(被隐藏/折叠),这反过来又打开了一个窗口,上面写着:
“添加 [SomeDevExpressAssemblyNameHere].dll”
这会使用 DevExpress 填充工具栏所需的每个 dll 的名称不断更新自身。
这样我可以看到操作进度,完成后我可以像往常一样再次使用复制/剪切粘贴。
希望这可以帮助。
对我来说,解决方法是将 Web Essentials 2012 更新到 1.8 版。
有问题的版本是 1.6
工具 > 选项 > 文本编辑器 > HTML > 选项卡 -> 标识 -> 无设置为我解决了这个问题。
这为我修复了它:
工具 > 选项 > 文本编辑器 > HTML > 其他
取消选中“在源视图中粘贴时自动 ID 元素”选项
如果问题再次出现,我将发布更新。
我有这个问题几天,尝试卸载并重新安装我的Visual Studio 2012 Ultimate edtion SP3 ...仍然没有工作。所以我删除了我所有的扩展(VS 2012 的 git 工具和 Nuget 包下载器),重新启动了我的 VS,它再次像魅力一样工作了!希望它有效!
祝你好运!
我在虚拟机中运行 Visual Studio 时遇到了这个问题——Virtual Box 4.2 在 Mac OS X Mountain Lion 上运行,托管全新的 Windows 7 安装,除了 Visual Studio 之外没有安装其他任何东西。我发现问题是由 2 个不同的问题引起的。
首先,我的项目位于与主机操作系统共享的文件夹中。换句话说,在 Windows 来宾上,我的项目出现在网络驱动器上。因此,从网络驱动器在 Visual Studio 中打开项目似乎会导致此问题,因为当我将项目复制到 Windows VM 的 C 驱动器并从 C 驱动器上的副本在 Visual Studio 中打开它时,问题就消失了。
其次,当虚拟机上的硬盘快满时,我又开始遇到这个问题。我的硬盘驱动器上有大约 1GB 的可用空间。当我增加虚拟机上硬盘的大小时,这个问题就消失了。
对我来说,它似乎与剃刀语法有关,因为我只在一个特定的文件中使用它。
例如,如果我将以下代码放在一行中,我就会遇到所描述的问题。
@section BodyClassName {note}
但是当把右括号放在下一行时,问题就消失了
@section BodyClassName {note
}
亲切的问候
斯蒂金
http://geekswithblogs.net/sevenfortytwo/archive/2006/11/23/97947.aspx
RUN> iisreset
现在它在 VS 2012 上运行良好
打开 Visual Studio,创建一个新的 MVC 应用程序,关闭新应用程序,打开旧应用程序,它就可以工作了!
远非理想的解决方案,但请尝试在管理员模式下运行 Visual Studio 我几乎尝试了所有方法,这是唯一对我有用的方法
刚刚用 Codemaid 插件重现了类似的问题。发现这个对话:
这个问题有很多细节,但要尝试回顾一下这个问题,当从 UI 线程(例如 Spade 等 WPF 上下文)访问 API 时,VS2012 C++ API 引入了死锁问题。这在 VS2010 中不是问题,微软已经在 VS2013 中修复了它,但他们不会为 VS2012 修补它。
似乎表明应该进行修复(针对 Codemaid):
请密切关注此线程,以获取该问题的持续解决方案。它与更大的重写相关,因此我一直在通过首先添加大量单元测试来帮助确保功能在更改后保持一致。
检查 IIS 或其他进程(可能是 BizTalk)是否锁定了您的 DLL/引用
杀死/停止 IIS 或其他进程(如果是)
I found that VS also loads packages during the "background operation". You can remove unneeded extensions to make the operation faster.
在我关闭 TeamViewer 8 Clipboard Sync 后,我在几周前修复了它!现在它无缘无故地出现了,所以我尝试重置所有设置,它对我有用。
我想我找到了线索!一切以dcomcnfg.exe结束!
打开它并进入以下路径:
组件服务>计算机>我的电脑>dcom 配置
单击 dcom 后,您会看到许多警告,具体取决于您电脑上的组件数量。
在每个消息框上单击是,以便为 dcom 添加正确的记录。
我遇到了同样的问题,并且以管理员身份运行 VS 似乎已经为我解决了问题(我在 Visual Studio 2012 Express Hangs 上发布了一个类似的问题,并在标记的格式文档命令上显示消息“等待后台操作完成”作为这个的副本,所以我想我也会在这里分享)。
对我来说,是 Resharper 插件打开了一个没有显示的对话框。我只在任务栏的隐藏图标菜单中找到了对话框图标。当我摆脱对话框时,Visual Studio 立即恢复正常。