博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Visual Studio的“Waiting for a required operation to complete...”问题
阅读量:5922 次
发布时间:2019-06-19

本文共 2484 字,大约阅读时间需要 8 分钟。

自从使用Visual Studio 2013之后,多次遇到这个恼人的“Waiting for a required operation to complete...”问题。

问题发生于在Visual Studio 2013中复制/粘贴的时候。问题发生后,Visual Studio 2013停止响应,状态栏一直显示“Waiting for a required operation to complete...”,只能通过任务管理器强制结束Visual Studio进程,带来的后果是——所有未保存的代码全部丢失

本来以为是Visual Studio 2013带来的新问题,后来在MSDN中发现原来这是一个历史悠久的问题,至少在Visual Studio 2008时代就出现了,详见:,而更值得关注的是这篇MSDN内容下面的评论:

Why on earth is the message so vague??

This is another instance of a longstanding problem with progress and error messages that Microsoft seems totally blind to. They say things like "the system cannot find the file specified", or "Visual Studio is waiting for a required operation to complete": with a tiny bit more effort , the messages could refer specifically to what is happening (e.g. "the system cannot find the file specified with name abcdef.dll" and this would make the problem so much easier to solve! However, despite having pointed out this problem several years ago in feedback, the problems are still there, even in code written recently...

这里说“历史悠久的问题”,不是指引发“Waiting for a required operation to complete...”的原因,而是这个提示信息本身——提示信息太笼统,对定位问题一点帮助没有。上面的评论抱怨就是这个。

MSDN中提到的Visual Studio 2008中的这个问题是防病毒软件引起的,但我在Visual Studio 2013中遇到的问题不是这个原因,因为电脑上根本没有安装防病毒软件。

在上了解这个问题更多是某些VS插件(Add-in)引起的:

It is a very generic diagnostic. It is triggered by COM, heavily used in Visual Studio to implement extensibility. The underlying trigger is the IMessageFilter interface. The trigger occurs when COM marshals a method call to another thread and that call doesn't complete for 60 seconds.

There's little value in the actual notification, it is telling you something you already know. By the time 60 seconds have passed, you typically already have noticed things are not working well. Short from the wee bit of useful knowledge that Visual Studio isn't actually completely dead. The call however has to complete before VS gets usable again. There's little you can do but tap your foot and wait.

This problem is almost always caused by an add-in. Resharper is certainly a good candidate. You find the trouble-maker by disabling the add-ins one-by-one until the problem disappears. It is the kind of problem that's common with new versions of Visual Studio, it takes the add-in vendors a while to get the bugs and hangups ironed out. Contact the vendor for support and in general look for updates that may solve the issue.

而我的电脑上的VS2013只安装了两个插件——Git Extensions与TestDriven.Net。

如果真是VS插件引起的,目前只能怀疑Git Extensions,这有待进一步验证。

【相关链接】

转载地址:http://xgnvx.baihongyu.com/

你可能感兴趣的文章
什么是高内聚、低耦合?
查看>>
linux 管道符号 | ,以及&& ||等等特殊符号笔记
查看>>
vue2 less less-loader 的用法
查看>>
关于nutz跨服务器上传文件
查看>>
Javascript常用语法 (一)
查看>>
【干货分享】常用端口服务对照表
查看>>
从一个异常探索spring autowired 的原理
查看>>
05-创建对象-关系映射文件和数据库
查看>>
java debugger
查看>>
JDBCTemplate简化JDBC的操作(一)
查看>>
1、Bracket使用
查看>>
rpx
查看>>
dubbo 实战1
查看>>
【Tomcat】tomcat热部署和热加载(转载)
查看>>
Linux 安装及配置 Nginx + ftp 服务器
查看>>
Oracle创建Database Link
查看>>
【C#系列】你应该知道的委托和事件
查看>>
Python 面向对象
查看>>
json-lib maven依赖出错的问题
查看>>
最小生成树-并查集-Kruskal-zoj-2048-special judge
查看>>